1
我們(傳統)的應用程序可以運行在各種操作系統版本(10.4 - 10.7)的穩定,因爲年,現在隨機崩潰的內WaitNextEvent
ONE客戶計算機(他們兩個,雖然)。隨機崩潰下10.7.2
所有事故發生的深蘋果的代碼中隨機位置,但總是在調用堆棧WaitNextEvent
地方。
實例是:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 dyld 0x8fe8a33d _ZN4dyldL10loadPhase5EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 716
1 dyld 0x8fe8a501 _ZN4dyldL10loadPhase4EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 179
2 dyld 0x8fe8ae31 _ZN4dyldL10loadPhase3EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 1429
3 dyld 0x8fe8b1f1 _ZN4dyldL10loadPhase1EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 166
4 dyld 0x8fe8b340 _ZN4dyldL10loadPhase0EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 240
5 dyld 0x8fe8b3fd dyld::load(char const*, dyld::LoadContext const&) + 132
6 dyld 0x8fe8e036 dlopen + 428
7 libdyld.dylib 0x977b9a95 dlopen + 70
8 com.apple.CoreServices.CarbonCore 0x90d467cf GetDYLDEntryPointWithImage + 43
9 com.apple.CoreServices.CarbonCore 0x90d50aed GetDYLDEntryPoint + 45
10 com.apple.AppKit 0x9c62cf2c _IsCarbonFullScreenInstanceWorkspace + 57
11 com.apple.AppKit 0x9c03231c -[NSApplication _updateFullScreenPresentationOptions] + 75
12 com.apple.AppKit 0x9bdc97d5 -[NSApplication sendEvent:] + 906
13 com.apple.AppKit 0x9c4d81e1 _appActivationHandler + 547
14 com.apple.AppKit 0x9c4d79b8 carbonAppApplicationHandler + 108
15 com.apple.HIToolbox 0x9bb9f920 _InvokeEventHandlerUPP(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*, long (*)(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*)) + 36
16 com.apple.HIToolbox 0x9ba1b803 _ZL23DispatchEventToHandlersP14EventTargetRecP14OpaqueEventRefP14HandlerCallRec + 1602
17 com.apple.HIToolbox 0x9ba1ac80 _ZL30SendEventToEventTargetInternalP14OpaqueEventRefP20OpaqueEventTargetRefP14HandlerCallRec + 482
18 com.apple.HIToolbox 0x9ba1aa98 SendEventToEventTargetWithOptions + 75
19 com.apple.HIToolbox 0x9ba306fe _ZL29ToolboxEventDispatcherHandlerP25OpaqueEventHandlerCallRefP14OpaqueEventRefPv + 3152
20 com.apple.HIToolbox 0x9ba1bcbe _ZL23DispatchEventToHandlersP14EventTargetRecP14OpaqueEventRefP14HandlerCallRec + 2813
21 com.apple.HIToolbox 0x9ba1ac80 _ZL30SendEventToEventTargetInternalP14OpaqueEventRefP20OpaqueEventTargetRefP14HandlerCallRec + 482
22 com.apple.HIToolbox 0x9ba2faa9 SendEventToEventTarget + 76
23 com.apple.HIToolbox 0x9bb9f76c ToolboxEventDispatcher + 82
24 com.apple.HIToolbox 0x9bbb1e0f GetOrPeekEvent + 482
25 com.apple.HIToolbox 0x9bbb217f GetNextEventMatchingMask + 539
26 com.apple.HIToolbox 0x9bbb24b7 WNEInternal + 434
27 com.apple.HIToolbox 0x9bbb1784 WaitNextEvent + 53
28 com.ourStuff 0x000bebe5 LApplication::ProcessNextEvent() + 69
或
Thread 0:: Dispatch queue: com.apple.main-thread
0 libsystem_kernel.dylib 0x9c2dec22 mach_msg_trap + 10
1 libsystem_kernel.dylib 0x9c2de1f6 mach_msg + 70
2 com.apple.CoreFoundation 0x98f370ea __CFRunLoopServiceMachPort + 170
3 com.apple.CoreFoundation 0x98f40214 __CFRunLoopRun + 1428
4 com.apple.CoreFoundation 0x98f3f8ec CFRunLoopRunSpecific + 332
5 com.apple.CoreFoundation 0x98f3f798 CFRunLoopRunInMode + 120
6 com.apple.HIToolbox 0x95b7fa7f RunCurrentEventLoopInMode + 318
7 com.apple.HIToolbox 0x95d1c151 GetNextEventMatchingMask + 493
8 com.apple.HIToolbox 0x95d1c4b7 WNEInternal + 434
9 com.apple.HIToolbox 0x95d1b784 WaitNextEvent + 53
10 com.apple.HIToolbox 0x95cfc136 ModalDialog + 1638
11 com.apple.HIToolbox 0x95d03ff5 RunStandardAlert + 741
12 com.apple.HIToolbox 0x95d028bf StandardAlert + 201
13 com.ourStuff 0x0007fbaa 0x1000 + 519082
任何提示的高度讚賞!
截至目前,我們無法在本地重現bug。
哇。很高興在這裏看到一個PowerPlanter的同伴。 :)我沒有給你任何答案,但我記得在幾年內WaitNextEvent還隨機崩潰我的應用程序的前一個。之後的拔頭髮的日子,我終於固定下來,以一個額外的CFRelease在我的代碼CFStringRef別的地方。一些它從未在額外發行版附近崩潰,但在事件循環的很久之後。 –
這是一個奇怪的!但崩潰正在發生一個客戶的唯一系統 - 和他得到了DefaultFolderX黑客安裝,它在每一個崩潰轉儲顯示出來... – Jay