Flash Builder 裡最常拿來監控記憶體使用狀況的工具就是 Profile,位置在執行鈕的右邊。它能看到程式跑起來後物件怎麼被建立、記憶體怎麼被吃掉,對抓 Flex/AS3 專案的記憶體洩漏特別有用。
Profile 按下去沒反應,要先檢查什麼?
Profile 常見的失敗原因不是工具壞了,而是環境設定沒對齊。照下面順序排查,通常都能找到問題:
- 更改 Profile 使用的 port 號碼,避免跟其他程序衝突。
- 確認 SWF 本身沒有錯誤,且 PreloadSwf 是放在本地端。
- 換一個瀏覽器。我自己就遇過用 Firefox 打不開的狀況,換成 IE 就解決了。
- 確認指定的瀏覽器有安裝 debug 版本的 Flash Player。
- 檢查 `mm.cfg` 檔案的設定值。
Stack Overflow 上也有一串類似的除錯討論,可以對照參考:Flex Builder - Profiler - Can't run profiler。
瀏覽器和 Profile 選項要去哪裡設定?
開啟瀏覽器的設定在 `Window > Preference > General > Web Browser`,可以在這裡切換要用哪個瀏覽器執行 Profile。

Profile 本身的設定則在另一個頁面,port 號碼要改也是在這裡改。兩個 enable 選項一定要記得勾選,沒勾選是 Profile 連不上的常見原因之一。

設定完之後,接下來要選擇工作區(workspace):

怎麼監控外部 SWF 的記憶體?
切到 Profile 模式後,如果要觀察的不是目前專案、而是外部已經打包好的 SWF,可以走 `Profile > Profile External Application`,一樣會進入監控模式。


Profile 視窗裡可以看到哪些資訊?
進入 Profile 執行畫面後,左上角的欄位可以選擇要觀察的物件,同時可以在這裡設定中斷點,再用右上角的按鈕控制繼續執行、暫停等操作。

實際監控時,主要會看兩個面板:
- Memory Usage:顯示目前程式耗用的記憶體總量與變化趨勢,是抓記憶體洩漏最直接的入口。
- Live Objects:列出目前記憶體內存活的物件,包含各個 class 的累計實例數(Cumulative Instances)與累計記憶體(Cumulative Memory),可以直接看出哪個類別佔用最多。


還有其他觀察視窗嗎?
如果預設面板不夠用,可以從 `Window > Show View > Other > Flash Profile` 叫出其他觀察視窗,補齊需要的分析角度。

常見問題
Profile 按下去完全沒反應,是哪裡設定錯了?
最常見的原因是兩個 enable 選項沒勾選,或是瀏覽器沒裝 debug 版 Flash Player。先照上面第一節列的五個項目逐一排查即可。
要監控已經打包好、不在專案裡開發的 SWF 可以嗎?
可以,用 `Profile > Profile External Application` 選擇外部 SWF 檔案即可進入監控,不需要把它加進當前專案。
參考資料
Adobe Systems,`flash.sampler` Package(Flash Builder Profile 工具底層採樣機制所使用的 API),存取日期:2026-08-27。https://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/sampler/package.html
延伸閱讀
關於作者 {#author}
Claire Chang | 企業 AI 導入與流程轉型顧問。專注於 AI Agent 架構設計、ERP 系統整合與企業 AI 治理。
首次發布:2013-08-28