runloop和线程有什么关系?
2024-10-19 14:31:24
- 每条线程都有
唯一
的一个RunLoop对象与之对应的 - 主线程的RunLoop是
自动创建并启动
- 子线程的RunLoop需要
手动启动
子线程的RunLoop创建步骤如下:
获得RunLoop对象后要调用
run
方法来启动一个运行循环// 启动RunLoop
[[NSRunLoop currentRunLoop] run];
RunLoop的其他启动方法
// 第一个参数:指定运行模式
// 第二个参数:指定RunLoop的过期时间,即:到了这个时间后RunLoop就失效了
[[NSRunLoop currentRunLoop] runMode:kCFRunLoopDefaultMode beforeDate:[NSDate distantFuture]];- RunLoop是来管理线程的,当线程的RunLoop被开启后,线程会在执行完任务后进入休眠状态,有了任务就会被唤醒去执行任务。
- RunLoop在第一次获取时被创建,在线程结束时被销毁。
最新文章
- nginx+php-fpm+mysql分离部署详解
- 星外Xday提权
- 慕课网-安卓工程师初养成-6-3 如何使用 Java 中的数组
- 细说 Request[]与Request.Params[]
- c 深度剖析 3
- python拷贝文件到多个文件夹
- ffmpeg 发布hls流
- 解决Discuz“完善用户资料”任务不能完成的问题
- React学习笔记(三) 组件传值
- 重装eclipse要做的事
- 注册DLL,Unregister DLL
- C语言数据结构----递归的应用(斐波拉契数列、汉诺塔、strlen的递归算法)
- telnet发电子邮件
- svn文件图
- HTML <;td>; 标签的 rowspan 属性
- 线程ava.lang.OutOfMemoryError: unable to create new native thread
- PHP实现简单发红包(随机分配,平均分配)
- Java多线程-----原子变量和CAS算法
- MySQL 5.7新特性之在线收缩undo表空间
- JAVAWEB 一一 SpringMVC(注解)
热门文章
- Node.js-Webstorm2018配置nodejs
- 2017.10.28 QB模拟赛 —— 上午
- 西门子触摸屏利用VBScript脚本创建csv文件
- 我的visual studio 配色方案 Rubik c++版
- tarjan+topsort
- rectified units
- Android Realm初试
- java基础 File与递归练习 使用文件过滤器筛选将指定文件夹下的小于200K的小文件获取并打印按层次打印(包括所有子文件夹的文件) 多层文件夹情况统计文件和文件夹的数量 统计已知类型的数量 未知类型的数量
- mac同时安装jdk7和jdk8
- python实现简单关联规则Apriori算法