一,NSTimer 1 2 3 4 5 6 7 8 9 //创建方式1 NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(action:) userInfo:nil ...
分类:
移动开发 时间:
2016-09-26 15:59:46
阅读次数:
180
一,NSTimer 存在延迟:不管是一次性的还是周期性的timer的实际触发事件的时间,都会与所加入的RunLoop和RunLoop Mode有关,如果此RunLoop正在执行一个连续性的运算,timer就会被延时出发。 二,CADisplayLink CADisplayLink是一个能让我们以和屏 ...
分类:
移动开发 时间:
2016-09-26 12:28:05
阅读次数:
178
【join线程简述】 join()方法:Thread提供的让一个线程去等待另一个线程完成。当在某个程序执行流中(如main线程)调用其它线程(如t2线程)的join方法(t2.join()),调用线程(main线程)将被阻塞,直到被join()方法加入的join线程(t2.start())执行完成为 ...
分类:
编程语言 时间:
2016-09-24 16:09:42
阅读次数:
157
一、线程状态 在具体分析线程转储数据之前,我们首先要明确线程的状态。java.lang.Thread.State枚举类中定义了如下几种类型: NEW:线程创建尚未启动。 RUNNABLE:包括操作系统线程状态中的Ready和Running,可能在等待时间片或者正在执行。 BLOCKED:线程被阻塞。 ...
分类:
编程语言 时间:
2016-09-17 23:49:11
阅读次数:
292
一:RunLoop的应用 二:面试题: ####1.Runloop基础知识 - 1.1 字面意思 a 运行循环 b 跑圈 - 1.2 基本作用(作用重大) a 保持程序的持续运行(ios程序为什么能一直活着不会死) b 处理app中的各种事件(比如触摸事件、定时器事件【NSTimer】、select ...
分类:
移动开发 时间:
2016-09-10 23:42:38
阅读次数:
371
http://www.cnblogs.com/haippy/p/3252041.html 理解wait();当前线程调用 wait() 后将被阻塞(此时当前线程应该获得了锁(mutex)。在线程被阻塞时,该函数会自动调用 lck.unlock() 释放锁,使得其他被阻塞在锁竞争上的线程得以继续执行。 ...
分类:
编程语言 时间:
2016-09-10 17:39:25
阅读次数:
227
一:RunLoop的简单介绍 ####1.Runloop基础知识 - 1.1 字面意思 a 运行循环 b 跑圈 - 1.2 基本作用(作用重大) a 保持程序的持续运行(ios程序为什么能一直活着不会死) b 处理app中的各种事件(比如触摸事件、定时器事件【NSTimer】、selector事件【 ...
分类:
移动开发 时间:
2016-09-10 16:11:57
阅读次数:
315
程序进入后台,延迟指定时间退出 正常程序退出后,会在几秒内停止工作;要想申请更长的时间,需要用到beginBackgroundTaskWithExpirationHandlerendBackgroundTask一定要成对出现 { NSTimer *_timer; int aa; __block UI ...
分类:
移动开发 时间:
2016-09-07 13:03:56
阅读次数:
160
为什么要在非主线程创建NSTimer 将 timer 添加到主线程的Runloop里面本身会增加线程负荷 如果主线程因为某些原因阻塞卡顿了,timer 定时任务触发的时间精度肯定也会受到影响 有些定时任务不是UI相关的,本来就没必要在主线程执行,给主线程增加不必要的负担。当然也可以在定时任务执行时, ...
分类:
编程语言 时间:
2016-09-03 10:53:13
阅读次数:
331
阻塞队列是Java线程新特征中的内容,Java定义了阻塞队列的接口java.util.concurrent.BlockingQueue,阻塞队列的概念是,一个指定长度的队列,如果队列满了,添加新元素的操作会被阻塞等待,直到有空位为止。同样,当队列为空时候,请求队列元素的操作同样会阻塞等待,直到有可用 ...
分类:
编程语言 时间:
2016-09-02 15:49:39
阅读次数:
166