美文网首页
RunLoop面试题

RunLoop面试题

作者: WenJim | 来源:发表于2017-11-15 00:41 被阅读36次
  • 什么是RunLoop

    • 从字面意思看:运行循环,跑圈
    • 其实它内部就是 do-while循环,在这个循环内部不断地处理各种任务(比如Source,Timer,Observer)
    • 一个线程对应一个RunLoop,主线程的RunLoop默认已经启动,子线程的RunLoop的手动启动(调用run方法)
    • RunLoop只能选择一个Mode启动,如果当前Mode中没有任何Source(Source0,Source1),Timer,那么就直接退出RunLoop
  • 自动释放池什么时候释放?

    • 通过Observer监听RunLoop的状态
  • 在开发中如何使用RunLoop?什么应用场景?

    • 开启一个常驻线程(让一个子线程不进入消亡状态,等待其他线程发来消息,处理其他事件)
      • 在子线程中开启一个定时器
      • 在子线程中进行一些长期监控
    // 1. 获得子线程对应的RunLoop
    NSRunLoop * runloop = [NSRunLoop currentRunLoop];
    // 添加source
    [runloop addPort:[NSPort port] forMode:NSDefaultRunLoopMode];
    
    // 2. 默认是没有开启,仅限于子线程,主线程没效果
    [runloop run];
  • 可以控制定时器在特定模式下执行

  • 可以让某些事情(行为、任务) 在特定模式下执行

  • 可以添加Observer 监听RunLoop的状态,比如监听点击事件的处理(在所有点击事件之前做一些事情)

相关文章

  • iOS底层面试题--RunLoop

    什么是RunLoop? iOS底层面试题--RunLoop RunLoop面试题分析

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

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

  • runloop 介绍

    iOS面试题之runloop 阅读目录 1.runloop是什么/runloop的概念? 2.NSRunLoop ...

  • runloop 面试题

    runloop 面试题 基于最近的几次面试,整理了runloop 的相关知识 1、Runloop 是什么?Run ...

  • 探寻RunLoop的本质

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

  • NSRunLoop

    RunLoop运行逻辑 RunLoop面试题: 1、什么是RunLoop? 答:从字面意思上:运行循环、跑圈。 其...

  • RunLoop数据结构、RunLoop的实现机制、RunLoop

    推荐阅读:备战2020——iOS全新面试题总结 RunLoop概念 RunLoop的数据结构 RunLoop的Mo...

  • iOS底层原理总结 - RunLoop

    面试题 讲讲 RunLoop,项目中有用到吗? RunLoop内部实现逻辑? Runloop和线程的关系? tim...

  • 浅谈RunLoop

    面试题 讲讲runloop,项目中有用到吗? runloop内部实现逻辑 runloop和线程的关系 timer和...

  • RunLoop

    面试题 讲讲 RunLoop,项目中有用到吗? RunLoop内部实现逻辑? Runloop和线程的关系? tim...

网友评论

      本文标题:RunLoop面试题

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