VB.Net/Thread/Thread Status
Get Thread status: start time, ID, Processor Time
<source lang="vbnet"> Imports System.Threading Public Class MainClass
Shared Dim A As Thread = New Thread(AddressOf MethodA) Shared Dim B As Thread = New Thread(AddressOf MethodB) Shared Dim C As Thread = New Thread(AddressOf MethodC) Public Shared Sub Main() A.Name = "A" A.Start() B.Name = "B" B.Start() C.Name = "C" C.Start()
Dim List As System.Diagnostics.ProcessThreadCollection List = System.Diagnostics.Process.GetCurrentProcess().Threads() Dim objThread As System.Diagnostics.ProcessThread Console.WriteLine() For Each objThread In List Console.Write("Thread: {0:D5}", objThread.Id) Console.Write(" Start: {0}", objThread.StartTime) Console.WriteLine(" CPU Time: {0}", objThread.TotalProcessorTime) Console.Write(" State: {0}", objThread.ThreadState) If (objThread.ThreadState = System.Diagnostics.ThreadState.Wait) Then Console.Write("Reason: {0}", objThread.WaitReason()) End If Console.WriteLine(" Address: {0}", objThread.StartAddress()) Console.WriteLine() Next
End Sub Shared Sub MethodA() Dim I As Integer B.Join() For I = 0 To 250 System.Console.Write("A") Next End Sub Shared Sub MethodB() Dim I As Integer For I = 0 To 250 System.Console.Write("B") Next End Sub Shared Sub MethodC() Dim I As Integer For I = 0 To 250 System.Console.Write("C") Next End Sub
End Class
</source>