作家
登录

浅谈iOS Crash(一)

作者: 来源: 2017-07-21 17:29:36 阅读 我要评论

  •  
  •       }); 
  •  
  •       return _shareManager; 
  •  
  •   } 
  •  
  •   
  •  
  • - (nonnull id)copyWithZone:(nullable NSZone *)zone{ 
  •  
  •       return _shareManager; 
  •  
  •   }  
    • 场景3:多线程下非线程安然类的应用,如NSMutableArray、NSMutableDictionary解决办法:应用派发队列或锁包管数据读写安然。具体实现详见 iOS实录12:NSMutableArray应用中忽视的问题中第一部分。
    • 场景4:数据缓存稻磁逄和攫取。解决办法:应用派发队列或锁包管数据读写安然。如将数据的攫取和写异步放入串行同部队列,包管数据同步,线程安然。

    4、performSelector:withObject:afterDelay下的Crash

    • 场景1:对象释放比performSelector:afterDelay要早解决办法:在对应类的dealloc中履行cancelPreviousPerformRequestsWithTarget撤消履行。

    5、SIGPIPE导致的法度榜样退出

    • 当办事器close一个连接时,若client端接着发数据。根据TCP协定的规定,会收到一个RST响应,client再往这个办事器发送数据时,体系会发出一个SIGPIPE旌旗灯号给过程,告诉过程这个连接已经断开了,不要再写了。而根据旌旗灯号的默认处理规矩,SIGPIPE旌旗灯号的默认履行动作是terminate(终止、退出),所以client会退出。
    • 场景:长连接socket或重定向管道进入后台,没有封闭解决办法1:切换到后台时,封闭长连接和管道,回到前台再重建;解决办法2:应用signal(SIGPIPE,SIG_IGN),将SIGPIPE交给了体系处理。这么做将SIGPIPE设为SIG_IGN,使得客户端不履行默认动作,即不退出。 

    【编辑推荐】

    1. iOS大年夜0到1搭建高可用App框架
    2. 经由过程微信Android和iOS版看两大年夜体系差别
    3. [图]iOS 11的20项细节调剂:加倍人道化
    4. 开辟者所须要知道的iOS 11 SDK新特点
    5. 2017年实用于Android & iOS的最佳开源竽暌功用法度榜样
    【义务编辑:枯木 TEL:(010)68476606】

      推荐阅读

      如何在Linux中恢复仍在活动进程中的已删除文件

    cp 13 /home/m/Downloads/Compressed 因为我们已经知道文件名包含 .zip 扩大名,是以我们可以应用 .zip 扩大名进行搜刮。它将限制输出结不雅并显示所需的过程。很多情况下,删除的文件都可以恢复,比>>>详细阅读


    本文标题:浅谈iOS Crash(一)

    地址:http://www.17bianji.com/lsqh/36347.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)