《iOS开发笔记—运行循环RunLoop》
来源:互联网 发布:游戏引擎是什么 知乎 编辑:程序博客网 时间:2024/04/29 09:32
一、RunLoop
RunLoop:运行循环。主要作用:(1)保持程序的持续运行;(2)处理App中的各种事件(比如触摸事件、定时器事件、Selector事件);
在UIApplicationMain函数内部就启动了一个RunLoop,所以UIApplicationMain函数一直没有返回,保持了程序的持续运行,这个默认启动的RunLoop是跟主线程相关联。
1、RunLoop与线程
(1)每条线程都有唯一的一个与之对应的RunLoop对象
(2)主线程的RunLoop已经自动创建好了,子线程的RunLoop需要主动创建
(3)RunLoop在第一次获取时创建,在线程结束时销毁
2、获得RunLoop对象的方式
iOS中有2套API来访问和使用RunLoop
1.Foundation : NSRunLoop
2.CoreFoundation : CFRunLoopRef(NSRunLoop和CFRunLoopRef都代表着RunLoop对象)
Foundation
[NSRunLoop currentRunLoop];// 获得当前线程的RunLoop对象[NSRunLoop mainRunLoop];// 获得主线程的RunLoop对象
CoreFoundation
CFRunLoopGetCurrent();// 获得当前线程的RunLoop对象
CFRunLoopGetMain();// 获得主线程的RunLoop对象
阅读全文
0 0
- 《iOS开发笔记—运行循环RunLoop》
- iOS开发 底层抛析运行循环—— RunLoop
- iOS开发 底层抛析运行循环—— RunLoop
- iOS 运行循环-RunLoop 和 自动释放池-autoreleasepoo 笔记
- iOS开发 运行时 runloop
- 91- 运行循环:RunLoop
- RunLoop运行循环
- 运行循环-RunLoop
- iOS开发笔记>> runLoop机制的简介
- iOS开发-运行循环
- RunLoop iOS运行回路
- Runloop运行循环的作用
- 运行循环RunLoop原理剖析
- iPhone开发之iOS运行回路(RunLoop)总结
- iOS学习笔记12—Runloop
- iOS学习笔记12—Runloop
- iOS学习笔记—Runloop 经典讲解
- iOS学习笔记12—Runloop
- input 输入框的底层提示信息
- Django中的request.GET和request.POST
- Ubuntu14环境下NFS安装与配置
- java 简单工厂模式
- Tkinter选择路径功能的实现 Python2.7
- 《iOS开发笔记—运行循环RunLoop》
- leetcode-83. Remove Duplicates from Sorted List(删除有序链表中的重复元素)
- empty()函数
- BZOJ 4291: [PA2015]Kieszonkowe
- PB proUSB门锁接口函数例程
- css伪类选择器之:first-child和:first-of-type
- 在界面上添加完监听,监听服务起不来, 报错:本地计算机上的OracleOraDb11g_homeTNSListener服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。
- iOS开发
- 【工具类】-条码生成类(一维码,二维码)