1
在this Flambe guide它說:如何正確處理Flambe中的對象?
「這處置函數刪除其所屬的實體此組件,您應該重寫處置功能,以自己出售的對象,以防止內存泄漏。」
我有3個問題:
我應該如何重寫處置功能?
如何正確使用dispose函數?
有沒有辦法檢查Flambe中的內存泄漏?
在this Flambe guide它說:如何正確處理Flambe中的對象?
「這處置函數刪除其所屬的實體此組件,您應該重寫處置功能,以自己出售的對象,以防止內存泄漏。」
我有3個問題:
我應該如何重寫處置功能?
如何正確使用dispose函數?
有沒有辦法檢查Flambe中的內存泄漏?
1如果你如果不使用Component
使用Component
override public function dispose() {
myReferences = null;
myDisposable.dispose();
super.dispose();
}
: 您可以實現Disposable
,需要在其他處置功能時處理。
2您需要清除對象的引用,這意味着將其設置爲null。 您需要關閉在該上下文中創建的信號連接。 您需要處理Disposable
s。
3如果您使用JavaScript(html)目標,則可以使用chrome debug inspector/devtools。您可以收集內存配置文件,觀察CPU使用情況等。非常有用! https://developer.chrome.com/devtools/docs/profiles
感謝您的回答。只有幾個問題: 當你編寫'myReferences'時,你的意思是對這個組件對象的引用,對吧? 什麼是myDisposable? 我們稱'super.dispose()'爲了從它的所有者中刪除這個組件,對吧? – Robert777
myDisposable是實現'Disposable'接口的組件中使用的任何東西。 myReference是組件中使用的對象的另一個示例,它沒有實現'Disposable'。 –
是的,你應該總是執行'super.dispose()',因爲這會從組件中移除組件。 –