最近也是看到了很多Run Time / Loop 的东西
run 跑 loop 循环 -> 一直在运行着的循环
runloop可以实现常驻子线程 一直都存在
int main(int argc, char * argv[]) {
@autoreleasepool {
NSLog(@"只打印这个");
int i = UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
NSLog(@"不会打没有退出循环");
return i;
// 直接return 0 直接结束了。 不会循环 刚运行就死掉了
// app 运行进入main函数 主线程runloop 跟Xcode代码编译时刻爆红没有关系 .
进入Main函数时 在主线程会自动生成RunLoop 保证程序持续运行的
主线程的runLoop 是自动创建的 . 其他子线程是需要自己来创建的.
* RunLoop 作用
* 1. 进入Main函数时 在主线程会自动生成RunLoop 保证程序持续运行
* 2. 处理app中的各种事件 : 触摸 定时器 Selector .. 正常在项目中 是runloop 获取用户的状态 监听用户在干嘛 内部有 奥buzhe喔
* 3. 如果没人让app处理事件 RunLoop会进入休眠状态 app不处理事件了runloop不跑了 啥时候处理了 在跑
* 4. 为什么这样设计 ? 是可以节省CPU资源 提高程序性能 该做事的时候做事 改休息时休息