2012-05-28 51 views
0

我有一些WPF應用程序通過Background Worker下載文件,同時顯示一些動畫。如何提高多個後臺工作人員的WPF應用程序的性能

在那一刻動畫卡住的主要問題是定期卡住。

我不知道爲什麼。但我想我不得不放下下載文件的那個Background Worker的優先權。

任何線索如何更好地合併WPF應用程序下的動畫和文件下載?

當然,我總是可以分開這個功能,但是我們的想法是保持一體化的瓶子。 :)

任何良好的性能方法?

謝謝你的民間!

+5

不可能從問題中猜出,它沒有被記錄得足夠好。評論任何ReportProgress調用,看看是否有所作爲。 –

+1

我認爲你需要進入完整線程才能獲得優先級。 http://social.msdn.microsoft.com/forums/en-US/vblanguage/thread/34cf0b06-1cda-403f-99db-60a0a8f24875 – Paparazzi

+0

@Blam是的。我有9名後臺工作人員,他們使用與RIA服務相同的網絡連接。 –

回答

2

我的猜測是9個BackgroundWorkers排隊等待UI線程報告進度。

解決方案:

  • 少backgroundworkers - 9是很多到服務器的連接時,也許你可以嘗試在一個調用來加載更多的數據。
  • 減少進度報告 - 如果UI線程是瓶頸,你可以讓後臺工作人員設置一個屬性,讓一個後臺工作人員報告所有進度。
  • 較少的動畫 - 也將釋放UI線程。
+0

聽起來對我很好!謝謝!! –