NSZombie 分配日志不一致

Posted

技术标签:

【中文标题】NSZombie 分配日志不一致【英文标题】:Inconsistant NSZombie allocation log 【发布时间】:2015-11-08 04:28:41 【问题描述】:

我正在处理现在导入 Xcode 7 的旧代码。

我的问题是在更改非常基本的主/详细视图控制器时发生随机崩溃。

崩溃发生在 main() 中,因此并没有真正的帮助,但它是发送到已释放对象的消息。

我尝试在仪器“NSZombie”中运行,但是当我遇到崩溃时,跟踪并不真正一致。它表示 malloc / autorelease / retain / release 代码中有 4 次同一行,并且该代码甚至没有进行分配:

SSHTunnel *tunnel = [ tunnels objectAtIndex: rowIndex ];

这是 Instruments 指向的线,4 次。

崩溃本身发生在发送到未分配的 NSException 实例的消息上。

该项目是一个旧项目,我认为可能缺少编译器设置或配置错误。

例如,如果我在该方案中设置“开发”设置,我总是在下一个块中收到错误,现在我在该方案中使用开发构建它指向另一个位置但仍然没有意义.

我现在应该检查什么?

【问题讨论】:

【参考方案1】:

事实证明它确实发生在那个位置,但可能发生在一个非常奇怪的地方。我正在访问 NSArray 中越界的索引,这是我期望的异常,但由于某种原因它没有......哦,好吧,那些日子之一......

【讨论】:

以上是关于NSZombie 分配日志不一致的主要内容,如果未能解决你的问题,请参考以下文章

Calloc分配不一致

Docker Java应用日志时间和容器时间不一致

mysql5.7日志时间与系统时间不一致

尝试将 ID 分配给 pandas DataFrame 中的对,得到不一致的结果

发现日志文件和打印在eclipse控制台中的编码不一致

模糊的 NSZombie 控制台日志