2014年5月14日

NSTimer(2)

摘要: 看到这个标题,你可能会想NSTimer不就是计时器吗,谁不会用,不就是一个能够定时的完成任务的东西吗? 我想说你知道NSTimer会retain你添加调用方法的对象吗?你知道NSTimer是要加到runloop中才会起作用吗?你知道NSTimer会并不是准确的按照你指定的时间触发的吗?你知道NST... 阅读全文

posted @ 2014-05-14 13:04 残月下章台 阅读(296) 评论(0) 推荐(0) 编辑

NSTimer

摘要: 1. NSRunLoopCommonModes和Timer 当使用NSTimer的scheduledTimerWithTimeInterval方法时。事实上此时Timer会被加入到当前线程的Run Loop中,且模式是默认的NSDefaultRunLoopMode。而如果当前线程就是主线程,也就是U... 阅读全文

posted @ 2014-05-14 12:52 残月下章台 阅读(281) 评论(0) 推荐(0) 编辑

2014年3月21日

理解 Objective-C Runtime

摘要: 初学 Objective-C(以下简称ObjC) 的人很容易忽略一个 ObjC 特性 —— ObjC Runtime。这是因为这门语言很容易上手,几个小时就能学会怎么使用,所以程序员们往往会把时间都花在了解 Cocoa 框架以及调整自己的程序的表现上。然而 Runtime 应该是每一个 ObjC 都应该要了解的东西,至少要理解编译器会把[target doMethodWith:var1];编译成:objc_msgSend(target,@selector(doMethodWith:),var1);这样的语句。理解 ObjC Runtime 的工作原理,有助于你更深入地去理解 ObjC 这门语言 阅读全文

posted @ 2014-03-21 13:38 残月下章台 阅读(240) 评论(0) 推荐(0) 编辑

2014年3月20日

iOS系统安全机制概览

摘要: iOS通过以下几种机制来保全整个系统的安全性:一:系统结构所有iOS设备中,系统与硬件都高度集成,从系统启动、系统更新、应用的安装、应用的运行时等多个方面来保全系统的安全,具体包括:1:所有iOS设备在处理器内都集成有一段名为Boot Room的代码,此代码被烧制到处理其内的一块存储上,并且只读,可以认为是完全可信的。系统启动时,Boot Room通过苹果的Apple Root CA Public证书对Low-Level BootLoader进行验证,如果通过验证,Low-Level BootLoader将运行iBoot,较Low-Level Bootloader高层次的Bootloader, 阅读全文

posted @ 2014-03-20 15:08 残月下章台 阅读(1105) 评论(0) 推荐(0) 编辑

2014年1月10日

Which is the best of GCD, NSThread or NSOperationQueue?

摘要: Simple answer:Use NSThread (or even the pthreads API) when you want or need to have direct control over the threads you create, e.g. you need fine-grained control over thread priorities or are interfacing with some other subsystem that vends/consumes thread objects directly and you need to stay on t 阅读全文

posted @ 2014-01-10 14:55 残月下章台 阅读(249) 评论(0) 推荐(0) 编辑

2013年10月17日

Python2和Python3的不同

摘要: 这个星期开始学习Python了,因为看的书都是基于Python2.x,而且我安装的是Python3.1,所以书上写的地方好多都不适用于Python3.1,特意在Google上search了一下3.x和2.x的区别。特此在自己的空间中记录一下,以备以后查找方便,也可以分享给想学习Python的friends.1.性能Py3.0运行 pystone benchmark的速度比Py2.5慢30%。Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可以取得很好的优化结果。Py3.1性能比Py2.5慢15%,还有很大的提升空间。2.编码Py3.X源码文件默认使用utf-8编码,这就使得以下代 阅读全文

posted @ 2013-10-17 14:10 残月下章台 阅读(237) 评论(0) 推荐(0) 编辑

2013年9月26日

The longest plateau

摘要: Problem:Given an array, try to develop an efficient algorithm which can compute the length ofthe longest plateau. A plateau is a consecutive segment of an array with equal contents. For example, if x[] = {1, 2, 3, 4, 4, 4, 5, 5, 6}, then we have six plateaus which are 1, 2, 3, 4-4-4, 5-5 and 6. And 阅读全文

posted @ 2013-09-26 15:52 残月下章台 阅读(302) 评论(0) 推荐(0) 编辑

2013年7月22日

mac和Linux的环境变量设置

摘要: 有些命令的路径没有在PATH环境变量中,可以用echo$PATH命令查询得知,添加路径到PATH环境变量的方法如下:(如添加/sbin到PATH环境变量中)(1)如果只想在本次开机过程中临时性的添加修改,下次开机就无效的话,可以:输入exportPATH=$PATH:/sbin(2)如果只给当前用户永久添加,则:在~/.bash_profile中的靠近末尾有类似这样的一行PATH=$PATH:$HOME/bin后添加:/sbin,就变成PATH=$PATH:$HOME/bin:/sbin文件修改并保持完以后,运行source~/.bash_profile命令即可使修改操作立即生效(3)如果给系 阅读全文

posted @ 2013-07-22 18:06 残月下章台 阅读(611) 评论(0) 推荐(0) 编辑

JavaScrip绝句

摘要: 前几日在网上看到一篇文章:JavaScript绝句,看了以后觉得里面的代码颇为有趣,不过文章里面只是简单的说了这样写的目的和结果,却没有令读者起到既知其然,又知其所以然的效果。这里简单写一篇小文章剖析一下这篇“绝句”背后的原理吧。1. 取整同时转成数值型'10.567890'|0//结果: 10'10.567890'^0//结果: 10-2.23456789|0//结果: -2~~-2.23456789//结果: -2第一条绝句短短几句话,看起来十分的简洁,实际上背后的道理确是多了去了。这个东西分三大块:首先字符型转成数值型本身没有什么可称道的,因为这就是Jav 阅读全文

posted @ 2013-07-22 17:39 残月下章台 阅读(230) 评论(0) 推荐(0) 编辑

2013年7月1日

adb server无法启动方法,结束占用端口的进程

摘要: adb server is out of date. killing...ADB server didn't ACK* failed to start daemon *error: unknown host service使用adb时,若出上面的错,使用adb kill-server是没有用的,因为此时是其他进程的监听了端口,而不是adb。我用cmd+命令管理器解决:输入netstat-ano|findstr"5037"找到下列进程TCP127.0.0.1:50370.0.0.0:0LISTENING4236TCP127.0.0.1:5037127.0.0.1:49 阅读全文

posted @ 2013-07-01 15:56 残月下章台 阅读(272) 评论(0) 推荐(0) 编辑

导航