补充阅读
1,深入理解RunLoop
运行模式
FOUNDATION_EXPORT NSRunLoopMode const NSDefaultRunLoopMode;
FOUNDATION_EXPORT NSRunLoopMode const NSRunLoopCommonModes API_AVAILABLE(macos(10.5), ios(2.0), watchos(2.0), tvos(9.0));
NSDefaultRunLoopMode:时钟,网络事件 NSRunLoopCommonModes:用户交互,优先级高
都是在主线程中运行
NSTimer
1,如果将 NSTimer 添加到 NSDefaultRunLoopMode 中,scrollView 的滚动时间会是 NSTimer 停止;
2,如果需要不受到影响,则应该添加到 NSRunLoopCommonModes 模式中。需要注意的是,此时不能够在定时器方法中执行耗时的操作,否则会卡顿