美文网首页
runloop一些总结

runloop一些总结

作者: 水水兔 | 来源:发表于2019-07-11 17:59 被阅读0次

1、创建runloop后,如果没有这个runloop添加任何soures,observer,timer的话,此runloop会立即退出,例如:

 NSPort *macPort = [NSPort port];
 NSRunLoop *subRunLoop = [NSRunLoop currentRunLoop];
 [subRunLoop addPort:macPort forMode:NSDefaultRunLoopMode];
 [subRunLoop runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];

2、在一个子线程调用performSelector:onThread: withObject: waitUntilDone的时候,系统会给我们创建一个Timer的source,加到对应的RunLoop上去,而子 线程的runloop默认是没有创建的,所以我们必须手动创建,否则performSelector的方法不会调用

3、创建线程,当线程执行完会务时,就会死亡,要想线程保活,则需要在线程执行的方法添加runloop,并且为runloop添加source,如:

 - (void)alwaysLiveBackGoundThread{

NSThread *thread = [[NSThread alloc]initWithTarget:self selector:@selector(myThreadRun) object:@"etund"];
self.myThread = thread;
[self.myThread start];

}
- (void)myThreadRun{

 [[NSRunLoop currentRunLoop] addPort:[[NSPort alloc] init] forMode:NSDefaultRunLoopMode]; 
 [[NSRunLoop currentRunLoop] run]
    
}

相关文章

  • RunLoop 的相关概念

    此篇为对 RunLoop 的相关概念的总结,主要介绍 RunLoop 的一些概念 RunLoop 简介 RunLo...

  • iOS- Runloop浅谈

    最近项目完成年前的时间也比较轻松,对一些知识就行总结。今天总结的是Runloop.对于Runloop,在平时项目中...

  • RunLoop的一些学习与总结

    最近在学习一些OC底层的东西, 下面是学习了RunLoop的一些总结和感受^^ 首先,RunLoop的作用 从字面...

  • runloop一些总结

    1、创建runloop后,如果没有这个runloop添加任何soures,observer,timer的话,此ru...

  • RunLoop

    RunLoop 文章已经很多了,结合各大文章做个总结 什么是 RunLoop RunLoop 人如其名,run 跑...

  • iOS RunLoop 总结以及相关面试题解答

    iOS RunLoop 总结以及相关面试题解答 iOS RunLoop 总结以及相关面试题解答

  • NSRunLoop

    【iOS程序启动与运转】- RunLoop个人小结 RunLoop总结:RunLoop的应用场景(三) 走进Run...

  • iOS开发经验(18)-Runloop

    目录 Runloop RunLoop 与线程 个人理解总结 应用场景 1. 什么是RunLoop 基本作用 保持程...

  • 探寻RunLoop的本质

    iOS底层原理总结 - RunLoop 面试题 讲讲 RunLoop,项目中有用到吗? RunLoop内部实现逻辑...

  • Runloop总结和应用(附Demo)

    关于Runloop的原理或者源码分析,网上有很多文章。本文意在总结一下自己能想到的一些Runloop的知识点,并举...

网友评论

      本文标题:runloop一些总结

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