2013-12-17 54 views
2

我遇到了我的iOS應用程序的問題。這裏是我對有問題的組件的票:https://github.com/lxcid/LXReorderableCollectionViewFlowLayout/issues/52iOS:如何調試「發送到釋放實例的消息」

但是對於StackOverflow - 我的問題是更一般的。如何去調試這樣的事情?

我得到的唯一錯誤是:

2013-12-16 18:23:24.307 3rdRevolution[33315:70b] *** -[CFSet countByEnumeratingWithState:objects:count:]: message sent to deallocated instance 0x1336f850 
(lldb) 

這是Xcode中的截圖:

cl.ly/SzXL

我確實發現LXReordableCollectionView被註釋掉它的使用發生碰撞,其中解決了崩潰。但我仍然不知道爲什麼或如何解決它。並且註釋掉代碼來計算出事物似乎並不是一個好方法。

建議?

謝謝!

+1

一個懸掛指針的情況。以前分配在0x1336f850的實例已經發布,因此不再可用。啓用殭屍。有關更多信息,請參閱http://stackoverflow.com/questions/5386160/how-to-enable-nszombie-in-xcode。 – Till

+0

@我覺得這個錯誤信息的存在意味着他已經開啓了殭屍。 – Rob

+0

正確,殭屍已開啓。 –

回答

6
  1. 如果是您自己的自定義類,請將NSLog放入dealloc中。如果不是,請將您正在使用的類子類化,並使用[super dealloc]和NSLog覆蓋dealloc。
  2. 找出對象何時完全釋放。
  3. 找出爲什麼它被釋放。
+1

這是一個非常酷的答案。如果你的課程是神祕的,比如:NSISRestrictedToNonNegativeVariable? –

相關問題