作者su35 (su35)
看板Visual_Basic
标题[.NET] Threading.ThreadPool的一些疑问
时间Wed Oct 14 21:09:05 2009
下面是我写的多执行绪
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