zoukankan      html  css  js  c++  java
  • XPC connection interrupted

    用Analysis 静态分析代码,发现了一些问题,修改之后,然后用Instrument -> Leaks对内存做动态分析,发现一个错误:

    控制台报错:XPC connection interrupted 

    调试报错:libsystem_plantform.dylib'OSAtomicDequeue$variant$mp':

    libsystem_platform.dylib`OSAtomicDequeue$VARIANT$mp:

       0x181d178f8 <+0>:  mov    x8, x0

        0x181d178fc <+4>:  ldaxr  x0, [x8]

        0x181d17900 <+8>:  cbz    x0, 0x181d17914           ; <+28>

    ->  0x181d17904 <+12>: ldr    x9, [x0, x1]   #Thread 19: EXC_BAD_ACCESS (code=1, address=0x5a74d288)

        0x181d17908 <+16>: stxr   w10, x9, [x8]

        0x181d1790c <+20>: cbnz   w10, 0x181d178fc          ; <+4>

        0x181d17910 <+24>: ret    

        0x181d17914 <+28>: clrex  

        0x181d17918 <+32>: ret   

     

    调试仪表盘上线程信息:

     

    >Thread 19

     0 OSAtomicDequeue$VARIANT$mp

       7 thread_start

     如果关掉Instrument, 是不影响程序运行的。我不只是一次发现这个控制台错误了,也没有发现好的消除该错误的方法。另外在用Instrument检查的时候,是没有发现内存泄漏的小红叉的,全是绿色的对号。

    关于XPC: OBJCCN上有一篇详细的文章

    https://objccn.io/issue-14-4/

    网上大多数的解决思路是看当前错误发生在哪个线程,如果创建线程或者队列的时候都是用了标识符,就能很快定位到出错位置,但是我这次遇到的问题,错误发生在系统的动态链接库内部,无解,从字面意思上来看,也像是发生在主线程。

    主线程中做的事情太多了,而且是一个抽屉界面,不知道错误发生在哪个控制器的那个环节。。

  • 相关阅读:
    “浪潮杯”第九届山东省ACM大学生程序设计竞赛 F: Four-tuples容斥定理
    B
    C. Tourist Problem 2021.3.29 晚vj拉题 cf 1600 纯数学题
    C. Sum of Cubes
    Day29、Python中的异常处理及元类
    isinstance,issubclass,反射,内置方法(__str__,__del__,__call__)
    绑定方法与非绑定方法;classmethod及staticmethod装饰器
    组合,多态,封装
    类的继承
    面向对象编程思想基本介绍,类与对象的基本使用,属性查找,绑定方法
  • 原文地址:https://www.cnblogs.com/wjw-blog/p/9329914.html
Copyright © 2011-2022 走看看