0
我使用Thread
來啓動兩個函數AllCase
並且並行運行它們。使用線程時UI不響應
Thread t1, t2;
t1 = new Thread(new ThreadStart(AllCase))
{
Name = "Thread1"
};
t1.Start();
t2 = new Thread(new ThreadStart(AllCase))
{
Name = "Thread2"
};
t2.Start();
t1.Join();
t2.Join();
當Thread
開始,我不能與應用程序的UI交互。
我使用BackgroundWorker閱讀。
但我想Name = "Thread1"
使用,像這樣:
int idx = int.Parse(Thread.CurrentThread.Name.Replace("Thread", "")) - 1;
值idx
知道這個過程[IDX]易操縱。
而BackgroundWorker
在我的情況下無法正常工作。
那麼,有什麼方法可以解決我的問題嗎?
它的工作。刪除兩行會出現我的代碼問題。但我會修復。非常感謝你。 – vanloc
不客氣。出於好奇,爲什麼你使用join來等待線程完成? –
在我的情況下,'t1'會收集一個數據,'t2'需要這些數據來處理。但是我讀了你的評論:「除非你必須等待按照這個順序完成這些方法,否則你並不需要使用線程。」我理解它。謝謝@mongzhu。 – vanloc