美文网首页
iOS RunLoop 小结

iOS RunLoop 小结

作者: 小圆菜陪你财务自由 | 来源:发表于2018-07-03 06:47 被阅读0次

RunLoop,这个东西被大牛的都说烂了(很透彻了),但是为了向大牛迈进的我(吊丝),也忍不住要说一说。

概念:看字面意思就知道是 运行循环

作用:RunLoop的作用是保证线程不退出,有任务执行任务,没任务就睡觉(休眠状态),但是对于小猿来说就是装逼用的(用的很少,基本不用)。

注意:RunLoop有五种模式:

NSDefaultRunLoopMode - 默认模式;

UITrackingRunLoopMode-UI模式;

NSRunLoopCommonModes - 占位模式;

内核事件模式:系统内核事件处理;

初始化模式;程序启动的那一刻才有。之后就没有了 //后两种是用不到的

在使用的时间一定要注意,当我们想装逼一把而用NSRunLoopCommonModes模式时候,最好加载的事件不要太复杂,一定要“轻”,不然会有卡顿的现在或其它现象。比如:

NSTimer * time = [NSTimer timerWithTimeInterval:1.0 target:self selector:@selector(updateTimer) userInfo:nil repeats:YES];

    //加入运行循环

    [[NSRunLoop currentRunLoop] addTimer:time forMode:NSRunLoopCommonModes];

此时方法 updateTimer 处理的东西不要太耗时(太多太重太复杂),否则,你可以试试。

其次,注意一点是:RunLoop只可以去获取,没办法去创建。

一大早睡不着了,起来写个RunLoop!!!!! 欢迎大家吐槽更正。

相关文章

网友评论

      本文标题:iOS RunLoop 小结

      本文链接:https://www.haomeiwen.com/subject/zsaruftx.html