Why would an app crash with _objc_msgSend_uncached

Is a document or a place to find information information on what would cause _objc_msgSend_uncached in a crash report?

more info on the crash

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

Got another similar crash that looks like this and ends in 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:] (MyCe
 
 
 
解决办法:

_objc_msgSend_uncached is an internal implementation detail of objc_msgSend. Crashes in objc_msgSend most often indicate that you're sending a message to a deallocated instance. The most common cause of that is incorrect memory management. The most common cause of incorrect memory management is failure to use ARC.

Most likely, -[AEEngine scanKeyframes:currentFrame:] is trying to message something that is deallocated. That doesn't mean the bug is in AEEngine, only that this is the place you tripped over the over-release. I would start by making sure that ARC is turned on, and that you have addressed all static analyzer warnings.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值