2013-03-18 14 views
0

我正在使用調用委託與定時器控制和線程池,我擔心我的應用程序性能。那麼除了Timer之外,還有其他什麼方法。使用定時器控件調用委託?

此外我的Windows應用程序每10秒刷新一次,並增加內存大小。我應該怎麼做才能限制內存。

+0

你應該釋放不再需要的所有資源。即如果你創建任何一次性物品,你應該處置它們。 – Leri 2013-03-18 07:32:12

+0

應用程序每10秒刷新一次?你的應用程序做了如此大幅度的更新?請定義更清晰,以便我們可以深入到您的問題 – 2013-03-18 07:32:27

+3

您應該做的第一件事是顯示一些代碼,我猜。除非人們可以看到你現在有什麼樣的代碼,否則你不可能在這裏得到任何好的支持。 – 2013-03-18 07:33:00

回答

0
  1. 請提供更多您的問題的詳細信息。
  2. And memory size increases - 這似乎是你的應用程序有內存泄漏問題..
  3. 檢查你是不是創造新的定時器控制,即你需要重複使用的單用途同一個對象實例。

解決方案,我想應該通過理解你的問題來幫助你;請參見您有編碼,如

myInstanceControl.OnClick += new EventHandler(myInstanceControl_Click); 

OR

myInstanceControl.OnClick += myInstanceControl_Click; 

如果模塊在這樣的代碼片段執行多次,那麼你還需要之前對象代碼刪除事件處理程序未從執行範圍或事件處理程序本身引用。如

myInstanceControl.OnClick -= new EventHandler(myInstanceControl_Click); 

OR

myInstanceControl.OnClick -= myInstanceControl_Click; 
+0

感謝您的評論。我有一個只有一次初始化的計時器* timer.Tick + = new EventHandler(timer_Tick); timer.Interval = 10000; timer.Enabled = true; timer.Start();並在計時器滴答函數我有一套執行的語句,即使計時器只inilizes每一個函數我也使用GC.Collect()來釋放內存。但是當我的Timer_tick函數調用suddenely時,內存大小會增加。關於我的應用程序處理實時數據,它應該每10秒刷新一次。 – 2013-03-18 07:44:01

+0

@RamdasBhosale你能告訴我們在Time_tick函數代碼或概念方面會發生什麼嗎? (更新/編輯你的問題相同:)) – 2013-03-18 09:05:55