全局代码Dim nthread As System.Threading.Thread
调用
vars("stop") = False
nthread = New System.Threading.Thread(AddressOf thread_sub1)
nthread.start(Nothing)
BeforeCloseProject事件
nthread.Join()
我在全局代码里定义了
Dim ArtSubThread As System.Threading.Thread
在窗口里按钮事件里调用的时候就直接提示这个错误了。。

ArtSub函数里是
以下内容为程序代码:
1 Public Function ArtSub()
2 While ARTLogic < 2
3 If ARTLogic = 0 Then
4 ARTCount += 1
5 Dim Val3() As Byte = New Byte() {1, 4, 1, 0, 0, 8, 240, 48}
6 Ports("COM2").Write(Val3, 0, Val3.Length)
7 Threading.Thread.Sleep(7)
8 Dim str As String
9 Dim cnt As Integer = Ports("COM2").BytesToRead
10 If cnt > 0 Then
11 Dim Val(cnt - 1) As Byte
12 Ports("COM2").Read(val, 0, cnt)
13 For i As Integer = 0 To cnt - 1
14 If (i Mod 21) = 3 Or (i Mod 21) = 4 Or (i Mod 21) = 7 Or (i Mod 21) = 8 Or (i Mod 21) = 11 Or (i Mod 21) = 12 Or (i Mod 21) = 15 Or (i Mod 21) = 16 Then
15 str += Val(i).ToString("X2")
16 End If
17 Next
18 End If Threading.Thread.Sleep(1)
19 End If
20 End While
21 End Function
直接关闭窗口的时候线程没销毁,就直接奔溃了。。
想问下有没有什么方法可以单独销毁这个线程。