跳到主要内容

GetThreadID 得到当前线程ID

🎯功能

获得当前多线程的线程ID

📜语法

结果 = GetThreadID()

📥参数

📤返回

💡示例

Dim 线程ID
TracePrint "主线程无法得到线程ID: " & GetThreadID()

线程ID = BeginThread(多线程)
Delay 1000
TracePrint "启动的子线程ID: " & 线程ID

Sub 多线程()
Dim 线程ID
线程ID = GetThreadID()
TracePrint "子线程中获取的当前线程ID=" & 线程ID
End Sub
Global g_线程ID1, g_线程ID2
//由于要在子线程中判断线程ID, 所以这里需要使用全局变量
g_线程ID1 = BeginThread(多线程)
Delay 1000
g_线程ID2 = BeginThread(多线程)
Delay 1000

Sub 多线程()
TracePrint "子线程被启动了"
For 3
TracePrint "线程执行中..."
Delay 1000
Next
End Sub

Sub OnThreadExit()
Dim 线程ID
//线程结束触发本子程序, 通过命令得到对应线程ID
线程ID = GetThreadID()
TracePrint "发现线程ID=" & 线程ID & "的线程停止了"
If 线程ID = g_线程ID1 Then
TracePrint "线程1停止了"
ElseIf 线程ID = g_线程ID2 Then
TracePrint "线程2停止了"
End If
End Sub

📘备注

  • 无法得到主线程ID