我在應用程序中的OS X Lion 10.7上出現以下錯誤。我已經指出了導致錯誤的原因,但是想知道這是10.7中的錯誤,還是因爲我錯過了某些東西而改變了。GC在未註冊線程上的操作
#0 0x00007fff90742b44 in auto_zone_thread_registration_error()
#1 0x00007fff9073a9a4 in auto_zone_allocate_object()
#2 0x00007fff8f36335e in _Block_copy_internal()
#3 0x00007fff8a9d7e9d in HALC_ProxyIOContext::StopIOProc()
#4 0x00007fff8a9d7dc6 in __HAL_HardwarePlugIn_DeviceStop_block_invoke_30()
#5 0x00007fff8a9b8521 in HALB_Executor::DoIt()
#6 0x00007fff8a9b84ce in HALB_Executor::Run()
#7 0x00007fff8a9d7ce9 in HAL_HardwarePlugIn_DeviceStop()
#8 0x00007fff8a9d7c6d in HALPlugIn::DeviceStopIOProc()
#9 0x00007fff8a9d7bb1 in AudioDeviceStop()
#10 0x00000001044b381c in AUHAL::StopHardware()
#11 0x00000001044b397e in AUHAL::AUIOProc()
#12 0x00007fff8a9d5362 in HALC_ProxyIOContext::IOWorkLoop()
#13 0x00007fff8a9d4ac9 in HALC_ProxyIOContext::IOThreadEntry()
#14 0x00007fff8a9d4984 in HALB_IOThread::Entry()
#15 0x00007fff8fb2f8bf in _pthread_start()
#16 0x00007fff8fb32b75 in thread_start()`
導致此垃圾收集線程錯誤代碼:
NSSound *completedSound = [NSSound soundNamed:@"Glass"];
[completedSound play] //this line is causing the error;
所有該行確實是
malloc: *** auto malloc[3677]: error: GC operation on unregistered thread. Thread registered implicitly. Break on auto_zone_thread_registration_error() to debug.
運行在斷點
bt
時
從GDB的堆棧跟蹤播放在用戶選擇的系統上註冊的系統聲音之一。對我來說,這似乎是一個錯誤,並且我已經提交了一個錯誤報告以防萬一。
其他人經歷過嗎?
我也在遇到它。不確定是否嚴重。我試圖強制回放到主線程上,沒有運氣。 –
這是Lion已經報告並正在處理的錯誤。目前AFAIK沒有解決方法。 –
我也提交了它,一段時間後,它被標記爲「9341336的重複」 – febeling