1 概念
join方法是将单独执行的线程合并成一个线程。
join()方法是Thread类中的一个方法,该方法的定义是等待该线程终止。其实就是join()方法将挂起调用线程的执行,直到被调用的对象完成它的执行。
2 不加join
2.1 代码
Imports System
Imports System.Threading
Module Module1
Sub main()
Dim r As New Runner
Dim thread As New Thread(New ThreadStart(AddressOf r.run))
thread.Start()
'thread.Join()
For i As Integer = 0 To 10
Console.WriteLine(vbTab + Str(i))
thread.Sleep(100)
Next
Console.ReadLine()
End Sub
End Module
Public Class Runner
Public Sub run()
For i As Integer = 0 To 10
Console.WriteLine(i)
Thread.Sleep(100)
Next
End Sub
End Class
2.2 输出
为同步进行的
3 加join
3.1 代码
将该线程加入主线程,若是线程没开始就加入,程序会报错
Imports System
Imports System.Threading
Module Module1
Sub main()
Dim r As New Runner
Dim thread As New Thread(New ThreadStart(AddressOf r.run))
thread.Start()
thread.Join()
For i As Integer = 0 To 10
Console.WriteLine(vbTab + Str(i))
thread.Sleep(100)
Next
Console.ReadLine()
End Sub
End Module
Public Class Runner
Public Sub run()
For i As Integer = 0 To 10
Console.WriteLine(i)
Thread.Sleep(100)
Next
End Sub
End Class