有沒有辦法在Xcode中調試時觀察對象的保留計數的更改?觀察更改以保留計數
回答
儀器將爲您提供此信息最有用的形式。 先使用。
如果必須,則可以覆蓋相關的方法做一些記錄:
- (oneway void) release {
DLog(@"%p release", self);
return [super release];
}
- (id) retain {
DLog(@"%p retain", self);
return [super retain];
}
- (id) autorelease {
DLog(@"%p autorelease", self);
return [self autorelease];
}
這可能不是ARC下工作,我不知道。
ALSO,正如其他人所指出的那樣,你不應該關心你的對象的絕對保留計數。你只應該擔心你聲稱擁有並因此需要發佈的東西。參見:Calling -retainCount Considered Harmful和When to use -retainCount?
對於'-retainCount',從來沒有**必須**,它不會給你任何相關的信息。 – 2012-03-15 21:10:12
@Erik:這不是絕對正確的,並且證明它包含在Instruments中,正如我所指出的那樣。 – 2012-03-15 21:22:09
樂器中包含的內容遠遠少於保留/釋放/自動釋放的所有用途的絕對保留計數以及更多的後退。只有在這種情況下,retainCount纔是有用的,但這是一個非常小的細節。 – bbum 2012-03-15 21:39:17
- 1. 只保留觀察連續
- 2. 保留可觀察的原始數據
- 3. 觀察NSMutableDictionary更改
- 4. 觀察NSPopupButton更改
- 5. 保留基於其他列的觀察
- 6. 角指令觀察更改
- 7. Angular typeahead:觀察數據集更改
- 8. 獲取SQLiteCursorLoader觀察數據更改
- 9. 在NSMutableArray中觀察計數
- 10. R:一類計數觀察
- 11. 觀察可觀察範圍內的所有屬性更改
- 12. 合併SAS數據集但只保留常見觀察
- 13. Firebase觀察者在viewDidLoad中調用時沒有觀察數據庫更改
- 14. 觀察員可以觀察多個可觀察物嗎?
- 15. Knockout.js計算可觀察不綁定到可觀察數組
- 16. 計算可觀察不更新值
- 17. 在保持訂閱的情況下更改可觀察的流
- 18. 觀察angular-chart.js中的更改?
- 19. 觀察對NSUserDefaults的更改時出錯
- 20. 更改顯示(UI)項觀察集合
- 21. 如何觀察NSView框架更改?
- 22. 錯誤的可觀察更改訂戶
- 23. NSNotificationCenter更改觀察者訂單
- 24. 觀察值更改爲NSUserDefaults鍵
- 25. 文件更改觀察者工具
- 26. 如何觀察對NSTextStorage的更改
- 27. 觀察AXUIelement的子級更改?
- 28. 在Linux中觀察文件的更改
- 29. 觀察對DOM屬性的更改
- 30. UITextField - 觀察對selectedTextRange的更改嗎?
你爲什麼要這麼做? 'retainCount'並不意味着你的想法。 – 2012-03-15 20:48:31
感謝大家的回答。 (請在投票前告訴我爲什麼我的問題不好) – 2012-03-15 22:17:40
你應該[永遠](http://whentouseretaincount.com)觸摸'retainCount'。對於更詳細的解釋看看這裏:http://stackoverflow.com/questions/4636146/when-to-use-retaincount – 2012-03-15 20:49:20