【原文】http://www.lis186.com/?p=2276
當Titanium Mobile App的複雜度增加時,若對於javascript的寫作觀念不正確,穩定度會隨著程式的複雜度逐漸下降。其中最嚴重的問題,就屬於記憶體漏失(Memory Leak)了。在iOS的部分,要檢驗已經不需要的物件所用過的記憶體是否有被回收,可以使用XCode裡面的Instruments來作最精確的監控。
使用Instruments監控Titanium Mobile App的步驟如下:
1. 先用Titanium Studio先Build,在專案裡的build/iphone目錄下會產生一個附檔名為.xcodeproj的Xcode專案檔。用Xcode開啓該專案之後,在下拉選單選擇Product > Profile。
[img]http://dl.iteye.com/upload/attachment/611171/e5819275-dddb-34c7-b36d-73ff237c3c8d.jpg[/img]
2. 選擇Allocations,以便於讓我們之後可以追蹤個別物件佔用記憶體的情況。
[img]http://dl.iteye.com/upload/attachment/611173/37ddba9f-0e37-3747-918d-809361daf475.jpg[/img]
3. Instruments視窗開啓後,在搜尋內打proxy,就可以過濾出所有Titanium物件。列表中的TiUiButtonProxy其Living欄位顯示為1,代表有一個Button元件還佔用著記憶體。這些數字都是會隨著,模擬器內App的狀態即時更新的。所以只要邊操作邊觀察,找出記憶體漏失的部份應該就沒那麼難了。
[img]http://dl.iteye.com/upload/attachment/611175/b54262e5-04c2-3709-9138-1afab5a5ff0c.jpg[/img]
當Titanium Mobile App的複雜度增加時,若對於javascript的寫作觀念不正確,穩定度會隨著程式的複雜度逐漸下降。其中最嚴重的問題,就屬於記憶體漏失(Memory Leak)了。在iOS的部分,要檢驗已經不需要的物件所用過的記憶體是否有被回收,可以使用XCode裡面的Instruments來作最精確的監控。
使用Instruments監控Titanium Mobile App的步驟如下:
1. 先用Titanium Studio先Build,在專案裡的build/iphone目錄下會產生一個附檔名為.xcodeproj的Xcode專案檔。用Xcode開啓該專案之後,在下拉選單選擇Product > Profile。
[img]http://dl.iteye.com/upload/attachment/611171/e5819275-dddb-34c7-b36d-73ff237c3c8d.jpg[/img]
2. 選擇Allocations,以便於讓我們之後可以追蹤個別物件佔用記憶體的情況。
[img]http://dl.iteye.com/upload/attachment/611173/37ddba9f-0e37-3747-918d-809361daf475.jpg[/img]
3. Instruments視窗開啓後,在搜尋內打proxy,就可以過濾出所有Titanium物件。列表中的TiUiButtonProxy其Living欄位顯示為1,代表有一個Button元件還佔用著記憶體。這些數字都是會隨著,模擬器內App的狀態即時更新的。所以只要邊操作邊觀察,找出記憶體漏失的部份應該就沒那麼難了。
[img]http://dl.iteye.com/upload/attachment/611175/b54262e5-04c2-3709-9138-1afab5a5ff0c.jpg[/img]
本文介绍了如何使用Xcode Instruments工具来监控Titanium Mobile App的内存使用情况,并详细说明了如何定位内存泄漏的问题。
5742

被折叠的 条评论
为什么被折叠?



