我們正在開發使用Prism 4的WPF應用程序,並且由於資源未被釋放而正在經歷嚴重的內存泄漏。我們使用ANTS Memory Profiler來檢測哪些類阻止了垃圾收集器釋放內存,但我們對這個工具非常陌生,所以我們對其輸出的理解是有限的。無法使用ANTS RedGate Memory Profiler解決內存泄漏
我們的測試案例在於打開一個窗口,讓您從列表中選擇一個插件。該窗口託管一個Wizard控件,該控件包含一個標題,一組按鈕和一個顯示活動WizardPage(即UserControl)的主區域。通過選擇插件並單擊下一步按鈕,更多的WizardPage控件在嚮導區域中註冊並使用RegionAdapter添加到Wizard.Pages集合中。用戶可以通過點擊Next/Previous按鈕來瀏覽頁面。 如果我們打開向導窗口,只需單擊取消按鈕,則會按預期方式調用嚮導控件終結器。但是,如果我們在單擊「取消」按鈕之前打開向導窗口並展開插件組合框,則永遠不會調用嚮導控件終結器。這裏是Instance分類程序爲嚮導的螞蟻內存分析器截圖:
我們嘗試沒有成功,幾乎一切,可能有人幫助我們理解這是怎麼回事呢?
預先感謝您。
而不是張貼截圖的圖像,如何張貼實際的消息?我根本看不懂。 – Joe
@Joe:請在新標籤中打開圖片(查看圖片,在另一個標籤中打開圖片或類似內容)。此時,您將可以縮放並查看實際大小的圖像。 –
你不能關閉你的ImportWizardWindow嗎?這看起來像是你擁有的唯一真正的類。配置窗口,你應該沒問題。但從截圖中的數字來看,無處不在1,所以這可能不是真正的問題,螞蟻的分析是虛假的。 –