看板 C_Sharp 關於我們 聯絡資訊
我想試試看backgroundworker的方法 結果居然不行 receiveMsg我是用另一個thread去跑 最後他還是跟我說receiveBox的thread不是產生receiveBox的thread而錯誤 其實用上一篇的invoke是可以 但是我想試試看backgroundworker啊~~ 快瘋了…囧 我的mainthread也不會再receiveBox上寫東西呀 又不會有啥race condition 為了讓別的thread在receiveBox上寫字居然這麼麻煩...orz private void receiveMsg() { while (true) { if (cbSocket.Receive(recmsg) != 0) backgroundWorker1.RunWorkerAsync(); } } private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { this.receiveBox.Text = "dfkdlf"; //這一行發生問題 囧 } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.58.5.192 ※ 編輯: Arton0306 來自: 210.58.5.192 (12/10 20:57)
tomex:.Net強調SafeThread,因此要用Invoke麻煩點,勝過日後衝到 12/11 13:07