iOS巅峰之NSRunLoop
来源:互联网 发布:南风知我意 txt下载 编辑:程序博客网 时间:2024/04/26 09:08
我们首先来了解一下什么是NSRunLoop
1.NSRunLoop是IOS消息机制的处理模式
NSRunLoop的主要目的:保证程序执行的线程不会被系统终止。
NSRunLoop的主要作用:控制NSRunLoop里面线程的执行和休眠,在有事情做的时候使当前NSRunLoop控制的线程工作,没有事情做让当前NSRunLoop的控制的线程休眠。
2.NSRunLoop 就是一直在循环检测,从线程start到线程end,检测inputsource(如点击,双击等操作)同步事件,检测timesource同步事件,检测到输入源会执行处理函数,首先会产生通知,corefunction向线程添加runloop observers来监听事件,意在监听事件发生时来做处理。 3.runloopmode是一个集合,包括监听:事件源,定时器,
我们在使用NSTimer的时候,可能会接触到runloop的概念,下面是一个简单的例子:
#pragma mark - 开辟子线程 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ // NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(change:) userInfo:@"哈哈" repeats:YES]; self.timer = [NSTimer timerWithTimeInterval:1.0 target:self selector:@selector(change:) userInfo:@"哈哈" repeats:YES]; [self.timer fire];#pragma mark - 在子线程中,开启NSRunLoop, 子线程中NSRunLoop默认是关闭的 [[NSRunLoop mainRunLoop] addTimer:self.timer forMode:NSRunLoopCommonModes];- (void)change:(NSTimer *)time
{
NSLog(@"执行了time");
}
0 0
- iOS巅峰之NSRunLoop
- iOS多线程之NSRunloop
- IOS开发之NSRunLoop
- iOS开发之NSRunLoop
- ios巅峰之SQ数据库
- IOS巅峰之UICollectionView详解
- iOS巅峰之SBJSON解析
- iOS巅峰之跑马灯
- iOS巅峰之label描边
- iOS开发之NSRunLoop概述
- IOS巅峰之归档与反归档
- IOS巅峰之图片异步下载
- iOS巅峰之UI视图动画详解
- iOS巅峰之Swift笔记详解(上)
- iOS巅峰之键盘回收方法
- iOS巅峰之背景添加毛玻璃
- iOS巅峰之NSURL 基本方法 absoluteString
- iOS巅峰之MVC(设计模式)详解
- matlab学习笔记(十一)---二值形态学运算
- js获取地址参数(当有中文时不出现乱码)
- oracle 左右内和完全链接
- windows xp系统下无法安装LoadRunner11的问题解决
- for(inti=0;i<largenumber;i++){ Person * p = [Person person];代码的问题
- iOS巅峰之NSRunLoop
- sicily 1020. Big Integer
- 在RDO自动安装的OpenStack Liberty单机中搭建能够内外网互访的网络(三)-配置规则和创建密钥对
- 80端口被NT kernel & System 占用pid 4
- stringstream clear与str("")的问题
- 创建表
- QML之Menu菜单
- Python模拟登陆(urllib2)
- 组合模式(Composite Pattern)