Heyho!
我有一个小应用程序以LSUIElement
运行NSStatusItem
有时popupmenu的menuitems由代码更新。但是当更新的NSMenuItem
(或其超级菜单)被“突出显示”时,应用程序崩溃而不记录某些内容。
答案 0 :(得分:1)
你可以在gdb中运行时重现崩溃吗? Gdb在命令行中工作正常,我经常在命令行通过gdb运行GUI应用程序来捕获间歇性崩溃。
一旦在gdb中崩溃,请使用bt
命令获取崩溃位置的回溯。
这种性质的崩溃 - 间歇性 - 几乎总是由内存损坏,错误的线程或过度释放的对象引起的。查看您的代码并确保遵循Cocoa内存管理指南。如果您正在使用线程,请确保您没有从非主线程中不恰当地处理UI对象。