看板 Visual_Basic 關於我們 聯絡資訊
下面是我寫的多執行緒 Private Sub Connect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Connect.Click ThreadPool.QueueUserWorkItem(New WaitCallback(AddressOf Running), I2C_READ_VALUE) I2C_READ_VALUE.Set() '我本來是要這樣寫的 ' If Even_Start = True Then ' I2C_READ_VALUE.Reset() ' Else ' ThreadPool.QueueUserWorkItem(New WaitCallback(AddressOf Running), I2C_READ_VALUE) ' I2C_READ_VALUE.Set() ' End If End Sub Private Sub Disconnect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Disconnect.Click I2C_READ_VALUE.Reset() End Sub Sub Running() ...... I2C_READ_VALUE.WaitOne() ..... End sub 我的問題來了 為什麼如果我寫再同一各FUNCTION內 I2C_READ_VALUE.Reset() .... I2C_READ_VALUE.Set() 這樣就可以繼續執行 我把I2C_READ_VALUE.Reset()跟I2C_READ_VALUE.Set()寫在不同的 button 想說能要連線就開始運作 按離線就停止 結果在我按了離線後 想再按連線卻不會重新運作 所以我最後才寫成這樣 ThreadPool.QueueUserWorkItem(New WaitCallback(AddressOf Running), I2C_READ_VALUE) I2C_READ_VALUE.Set() 按過一次連線後 下一次連線後 又重新呼叫到 ThreadPool.QueueUserWorkItem(New WaitCallback(AddressOf Running), I2C_READ_VALUE) -- "◢██◣ 呼呼呼~ 為什麼…我這麼愛你… ↙操B跑車 " ,█◥◥◥ ˊ 對不起,他有車。 ˋ ◢██◣ ◎ ◎ ◣◢██◣ˊ █◥◥◥ ◣◥ ▉█◥◥◥ ██████ ██◣ ██◥█" g121630作 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.36.134.162