【发布时间】:2011-07-11 21:04:33
【问题描述】:
我应该能够在 Cocoa 框架本身内设置断点吗?
我一直在我的 Mac OS X 应用程序中看到各种崩溃,有时是随机崩溃。这是来自 Xcode 的示例调用堆栈的一部分:
0 - 0x98ed0e20 in __CFRunLoopRun
1 - 0x98ece464 in CFRunLoopRunSpecific
2 - 0x98ece291 in CFRunLoopRunInMode
3 - 0x96a90004 in RunCurrentEventLoopInMode
4 - 0x96a8fdbb in ReceiveNextEventCommon
5 - 0x96a8fc40 in BlockUntilNextEventMatchingListInMode
6 - 0x925b078d in _DPSNextEvent
7 - 0x925affce in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]
8 - 0x92572247 in -[NSApplication run]
9 - 0x021f009c in QEventDispatcherMac::processEvents at qeventdispatcher_mac.mm:591
10 - 0x01e47742 in QEventLoop::processEvents at qeventloop.cpp:149
11 - 0x01e4799e in QEventLoop::exec at qeventloop.cpp:201
12 - 0x01e49a33 in QCoreApplication::exec at qcoreapplication.cpp:1003
13 - 0x02254c54 in QApplication::exec at qapplication.cpp:3581
当我点击第 0 - 8 行时,Xcode 显示反汇编。
我更改了我的 Xcode 项目,使其在加载框架时使用 _debug 后缀。这使我可以单步执行第 9 到 13 行中的 Qt 代码,但第 8 行在启动时被调用,此后随时可能发生崩溃。
如果我无法设置断点,是否有任何工具可以帮助我调试此类问题?
提前致谢。
【问题讨论】:
标签: cocoa xcode debugging macos breakpoints