课程培训
RunLoop基础培训

一:什么是RunLoop
   (1)从字面意思看,运行循环、跑圈。
   (2)保持程序持续运行,处理App中的各类事件包括触摸事件、定时器事件、Selector事件。
   (3)节省CPU资源,提高程序的性能,该做事的时候做事,该休息的时候休息。
   
二:RunLoop与线程
    
   (1)每条线程都有唯一的一个与之对应的RunLoop对象。
   (2)主线程的RunLoop已经自动创建好了,子线程的RunLoop需要主动创建。
   (3)RunLoop在第一次获取时创建,在线程结束时候销毁。

三:RunLoop相关类
   Core Foundation中关于RunLoop的5个类

   1:CFRunLoopRef

   2:CFRunLoopModeRef  ,CFRunLoopModeRef代表RunLoop的运行模式,一个RunLoop包含若干个运行模式,即一个RunLoop包含若干个Mode,每个Mode又包含若干个Source/Timer/Observer,每次RunLoop启动时,只能指定其中一个Mode,这个Mode被称作CurrentMode,如果需要切换Mode,只能退出Loop,再重新指定一个Mode进入。系统默认注册了5个Mode:
   (1)kCFRunLoopDefaultMode:App的默认的Mode,通常线程是在这个Mode下运行
   (2)UITrackingRunLoopMode:界面跟踪Mode,用于ScrollView追踪触摸滑动,保证界面滑动时不受其它Mode影响
   (3)UIInitializationRunLoopMode:在刚启动App时进入的第一个Mode,启动完成后就不再使用
   (4)GSEventReceiveRunLoopMode:接收系统事件的内部Mode,通常用不到。
   (5)kCFRunLoopCommonMode:这是一种占位用的Mode,不是一种真正的Mode。

   3:CFRunLoopTimerRef
   (1)CFRunLoopTimerRef是基于时间的触发器。
   (2)基本上说的就是NSTimer,它会受到runloop的Mode的影响。
   (3)GCD的定时器不受RunLoop的mode的影响。




如果您想学习本课程,请预约报名
如果没找到合适的课程或有特殊培训需求,请订制培训
除培训外,同时提供相关技术咨询与技术支持服务,有需求请发需求表到邮箱soft@info-soft.cn,或致电4007991916
技术服务需求表下载请点击

服务优势:
丰富专家资源,精准匹配相关行业,相关项目技术精英,面向用户实际需求,针对性培训或咨询,互动式交流,案例教学,精品小班,实际工程项目经验分享,快捷高效,节省时间与金钱,少走弯路与错路。

专家力量:
中国科学院相关研究所高级研究人员
西门子,TI,vmware,MSC,Ansys,MDI,Mentor, candence,Altium,Atmel 、Freescale,达索,华为等
大型公司高级工程师,项目经理,技术支持专家
中科信软培训中心,资深专家或讲师
大多名牌大学,硕士以上学历,相关学历背景专业,理论素养高
多年实际项目实践,大型复杂项目实战案例分享,热情,乐于技术分享
针对客户实际需要,真实案例演示,互动式沟通,学有所值
报名表下载
联系我们 更多>>

咨询电话010-62883247

                4007991916

咨询邮箱:soft@info-soft.cn  

 

微信号.jpg

  微信咨询

随时听讲课

聚焦技术实践

订制培训 更多>>