2012-08-06 78 views
0

我們已經在業務層中使用演示文稿和.NET c#庫中的WPF開發了一個EMR軟件。 WCF服務調用用於在服務器和客戶端之間進行通信。該應用程序對頁面中的所有頁面和標籤使用WPF用戶控件。現在問題在於當用戶加載頁面和標籤頁時,內存消耗增加,並且在應用程序停止之前它不會減少。即使用戶關閉舊頁面,內存消耗也不會減少。隨着用戶加載更多頁面並關閉它們,系統會變慢。有一段時間用戶關閉應用程序並再次使用它。即使在這個時候,考慮到首次加載性能,應用程序也會變慢。我如何解決這種情況。它現在已經成爲應用程序的瓶頸。任何人都可以幫忙WPF應用程序中的內存管理和性能改進

+0

您將需要對應用程序進行概要分析以瞭解正在發生的事情,但聽起來像當您關閉選項卡時並未清除對選項卡的所有引用。也許你有一個緩存機制,或者有一些事件處理程序連接起來保存參考 - 但是沒有看到任何代碼,任何人都很難說。 – 2012-08-06 12:46:13

回答

0

您必須使用內存分析器來確定代碼的哪些部分保留在數據上。搜索'.NET內存分析器'。

0

我使用EQATEC profiler來剖析我在Silverlight,WPF和Windows Phone中的自定義控件。這真的很有用。