为什么应用程序会因_objc_msgSend_uncached而崩溃

 呵呵 发布于 2023-02-12 16:30

是一个文档或地方,以查找有关在崩溃报告中导致_objc_msgSend_uncached的信息的信息?

关于崩溃的更多信息

libobjc.A.dylib 0x37e623cc  _objc_inform
4   libobjc.A.dylib 0x37e616f2  _ZN7cache_t9bad_cacheEP11objc_objectP13objc_selectorP10objc_class
5   libobjc.A.dylib 0x37e61730  _ZN7cache_t4findEm
6   libobjc.A.dylib 0x37e617da  cache_fill
7   libobjc.A.dylib 0x37e65890  lookUpImpOrForward
8   libobjc.A.dylib 0x37e5e02a  _class_lookupMethodAndLoadCache3
9   libobjc.A.dylib 0x37e5ddf8  _objc_msgSend_uncached
10  MyApp   0x00253f5c  -[AEEngine scanKeyframes:currentFrame:] in AEEngine.m on Line 256
11  MyApp   0x00256148  -[AEEngine doFrame] in AEEngine.m on Line 664
12  MyApp   0x00255f28  __31-[AEEngine doFrameInBackground]_block_invoke in AEEngine.m on Line 642

得到了另一个类似的崩溃,看起来像这样,并以cache_t :: bad_cache结束

  0   libobjc.A.dylib                   0x37b44368 _objc_trap() + 0
  1   libobjc.A.dylib                   0x37b443c8 _objc_fatal + 68
  2   libobjc.A.dylib                   0x37b436ee cache_t::bad_cache(objc_object*, objc_selector*, objc_class*) + 202
  3   libobjc.A.dylib                   0x37b4372c cache_t::find(unsigned long) + 48
  4   libobjc.A.dylib                   0x37b437d6 cache_fill + 122
  5   libobjc.A.dylib                   0x37b4788c lookUpImpOrForward + 320
  6   libobjc.A.dylib                   0x37b40026 _class_lookupMethodAndLoadCache3 + 30
  7   libobjc.A.dylib                   0x37b3fdf6 _objc_msgSend_uncached + 22
  8   MyApp                         0x0033811c -[MyCellCell configureCell:] (MyCellCell.m:81)

Rob Napier.. 12

_objc_msgSend_uncached是一个内部实现细节objc_msgSend.崩溃objc_msgSend最常表明您正在向已解除分配的实例发送消息.最常见的原因是不正确的内存管理.不正确的内存管理的最常见原因是无法使用ARC.

最有可能的-[AEEngine scanKeyframes:currentFrame:]是,尝试发布已解除分配的内容.这并不意味着错误在于AEEngine,只是这是你在过度释放时绊倒的地方.我首先要确保ARC已打开,并且您已解决所有静态分析器警告.

1 个回答
  • _objc_msgSend_uncached是一个内部实现细节objc_msgSend.崩溃objc_msgSend最常表明您正在向已解除分配的实例发送消息.最常见的原因是不正确的内存管理.不正确的内存管理的最常见原因是无法使用ARC.

    最有可能的-[AEEngine scanKeyframes:currentFrame:]是,尝试发布已解除分配的内容.这并不意味着错误在于AEEngine,只是这是你在过度释放时绊倒的地方.我首先要确保ARC已打开,并且您已解决所有静态分析器警告.

    2023-02-12 16:32 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有