为什么需要runloop?
保持程序的只需运行。
系统本来就实现:
线程通信、自动释放池、延迟回调、触摸事件、selector事件、屏幕刷新......
开发可以使用
:检测卡顿、定时器设置mode、线程保活、
主线程默认开启runloop, 其他线程需要去获取。
// iOS app的上可看到的
int main(int argc, char * argv[]) {
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}
runloop的源码内容详解