2010-01-08 35 views
0

我的C#應用​​程序有一個計時器,每100毫秒觸發一個事件。在這個事件中有一個總線流量的接收處理程序,它不斷循環,直到接收緩衝區爲空,或者經過另一個100毫秒。這工作正常,直到我嘗試在運行時使用我的應用程序中的其他控件之一。然後應用程序凍結。有沒有人有任何想法如何分配我的應用程序(或以其他方式修改它),以便當我嘗試使用控件時,後臺事件(綁定到計時器)可以繼續運行並且不會停止應用程序?我正在使用Microsoft Visual C#2008速成版。謝謝。當鼠標事件被激活時,重載C#應用程序凍結

回答

3

您必須爲接收處理程序使用BackgroundWorker(或等效結構)。這樣它將運行在不同的線程中,表單將能夠及時響應,並且循環中不需要計時器。

+0

事實上,閱讀線程。 – 2010-01-08 23:19:15

+0

Vinko,謝謝你的提示! – 2010-01-11 16:26:57

相關問題