美文网首页
Runloop相关

Runloop相关

作者: 不会游泳De鱼 | 来源:发表于2016-09-04 17:04 被阅读12次

什么使用runloop?

  • 仅当在为你的程序创建辅助线程的时候,你才需要显式运行一个run loop。Run loop是程序主线程基础设施的关键部分。所以,Cocoa和Carbon程序提供了代码运行主程序的循环并自动启动run loop。IOS程序中UIApplication的run方法(或Mac OS X中的NSApplication)作为程序启动步骤的一部分,它在程序正常启动的时候就会启动程序的主循环。类似的,RunApplicationEventLoop函数为Carbon程序启动主循环。如果你使用xcode提供的模板创建你的程序,那你永远不需要自己去显式的调用这些例程。对于辅助线程,你需要判断一个run loop是否是必须的。如果是必须的,那么你要自己配置并启动它。你不需要在任何情况下都去启动一个线程的run loop。比如,你使用线程来处理一个预先定义的长时间运行的任务时,你应该避免启动run loop。
  • Run loop在你要和线程有更多的交互时才需要,比如以下情况:
    1、使用端口或自定义输入源来和其他线程通信
    2、使用线程的定时器
    3、Cocoa中使用任何performSelector…的方法
    4、使线程周期性工作

一般主线程会自动运行runloop,我们一般情况下不用管。而在子线程中,我们需要手动去运行它。你可以把它想象成一个循环,如果没有这个循环,子线程完成任务后,这个线程就结束了。所以这个时候我们就要运行一个runloop,用于处理种种事件,而让它不结束。而没有事件发生的时候, 会处于休眠状态,以节省电量。
runloop

相关文章

  • RunLoop

    RunLoop简单概述 RunLoop相关类 RunLoop逻辑处理 RunLoop实践 RunLoop简单概述 ...

  • iOS RunLoop(1)RunLoop简介

    iOS RunLoop(1)RunLoop简介iOS RunLoop(2)RunLoop相关类iOS RunLo...

  • iOS RunLoop(2)RunLoop相关类

    iOS RunLoop(1)RunLoop简介iOS RunLoop(2)RunLoop相关类iOS RunLo...

  • iOS RunLoop(3)RunLoop原理

    iOS RunLoop(1)RunLoop简介iOS RunLoop(2)RunLoop相关类iOS RunLo...

  • iOS RunLoop(4)RunLoop实战应用

    iOS RunLoop(1)RunLoop简介iOS RunLoop(2)RunLoop相关类iOS RunLo...

  • 深入浅出 RunLoop

    前言 文章主要分为四个部分 一、RunLoop 简介 二、RunLoop 相关接口 三、RunLoop 相关逻辑流...

  • 14-RunLoop-01

    一、RunLoop的认识 二、RunLoop对象 RunLoop源码: 三、RunLoop相关类 切换mode不会...

  • dailyLearning -- runLoop

    runLoop runLoop 对外的接口及相关类 runLoop 内部逻辑 runLoop 可以做啥 runLo...

  • RunLoop

    基本概念RunLoop相关类RunLoop的作用RunLoop和线程的关系RunLoop和autoreleasep...

  • RunLoop的介绍

    本文介绍的RunLoop包含以下几个点: 一、什么是RunLoop二、RunLoop对象三、 RunLoop相关的...

网友评论

      本文标题:Runloop相关

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