iOS-RunLoop的浅显见解

作者: Andy_WangPeng | 来源:发表于2016-07-08 13:28 被阅读384次

    首先非常感谢李明杰老师的视频教程教导,虽然只是视频,却感到身临其境,大家可以关注MJ老师的微博:@李明杰

    1.什么是RunLoop?

    答:程序开启时,都会自动创建一个主线程,自动运行runLoop,并且每一个线程都有自己的RunLoop对像。run:运行:Loop:循环。runLoop处理事件主要包含两种输入源:

    • 它包含Inpust sources (输入源),它主要处理其它线程的消息。其它线程回到主线程做事情,就是通过它来决定的。处理异步消息的
    • 还有一个timer sources (定时器),定时检查主线程事件。比如:检查UI界面上是否有点击事件、刷新事件等。处理同步消息的,在特定时间或者一定时间间隔发生。

    **番外一游

    0.AFN的认识

    答:
    1.AFN基于NSURL,性能相对来说还可以,主要是对NSURLSession对象进行了进一步的封装
    2.AFN采取Block的方式处理请求
    3.AFN封装了一些常用功能,满足基本需求,直接忽略了很多扩展功能,比如没有封装同步请求

    1.SDWebImage具体如何实现啊?

    答:

    1.利用NSOperationQueue和NSOperation下载图片,还利用了一些GCD的一些函数 (比如:解码GIF图片)
    2.它是利用URL作为『key』, NSOperation最为『value』
    3.它是利用URL作为『key』,image作为『value』
    ###SDWebImage这个框架相对来说很强大`

    2.App需要加载大量的数据,给服务器发送请求时卡住该做些什么呢?

    答:

    1.首先设置请求超时
    2.给用户提示请求超时
    3.根据用户操作再次请求数据

    3.什么是封装,会者说构建框架需要注意什么?

    答:
    1.提供给外界的接口功能是否使用、够用
    2.别人使我框架时候,能不能根据类名、方法名、就猜出接口的具体作用
    3.别人调用我框架时,提供的参数是否够用、调起来很简单,操作少
    4.别人使用我框架时,要不要再导入依赖其它的框架

    相关文章

      网友评论

      本文标题:iOS-RunLoop的浅显见解

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