gpt4 book ai didi

objective-c - 事件对象被垃圾收集了吗?

转载 作者:行者123 更新时间:2023-12-03 17:44:18 24 4
gpt4 key购买 nike

我在 Mac OS X 上的基于 Cocoa 的应用程序中使用垃圾收集器。它有 100 个线程正在运行,并且使用操作队列完成同步。

长时间运行后,其中一个对象会变成垃圾,应用程序将崩溃。

检查对象是否非零也会失败,因为对象无效并包含一些垃圾值。调用对象的方法会导致崩溃。

任何人都请帮我调试这个问题。

谢谢......................

最佳答案

I am using Garbage collector in my Cocoa based application on Mac OS X. It has 100s of threads running and synchronization is done using Operation Queue.

该错误很可能存在于代码看似相当过度并发的性质中。在“仅”具有两位数核心(如果是的话)的机器上运行 100 个线程不太可能非常高效,当然,保持所有内容正确同步将是相当困难的。

最好的起点是打开 Malloc 堆栈日志记录并使用 malloc_history 找出南移地址发生了哪些事件。

此外,10.6.5 中还修复了影响 GC 正确性的问题。

关于objective-c - 事件对象被垃圾收集了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4182260/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com