Thread without Synchronizing
Imports System Imports System.Threading Imports System.Text Imports System.Windows.Forms Public Class MainClass Public Shared Sub Main() Dim myHouse As New House() End Sub End Class Public Class House Dim house As String = New String("Lock") Public Sub New() Dim aThreadStart As Threading.ThreadStart Dim aThread As Thread Dim i As Integer For i = 0 To 10 aThreadStart = New ThreadStart(AddressOf ChangeTemperature) aThread = New Thread(aThreadStart) aThread.Name = CStr(i) & "'th room" aThread.Start() Next End Sub Private Sub ChangeTemperature() ' SyncLock (house) Console.WriteLine("Checking 1") Console.WriteLine("Checking 2") Console.WriteLine("Checking 3") Try Thread.Sleep(1000) Catch E As ThreadInterruptedException 'thread ended End Try Console.WriteLine("Checking 4") Console.WriteLine("Checking 5") Console.WriteLine("Checking 6") Console.WriteLine("Checking 7") Console.WriteLine("Checking 8") Console.WriteLine("Checking 9") Console.WriteLine("Checking 10") ' End SyncLock End Sub End Class
1. | Two threads without SyncLock | ||
2. | Two threads with SyncLock | ||
3. | Synchronize Thread Demo |