Mega Code Archive

 
Categories / VB.Net / Thread
 

Two threads without SyncLock

Imports System Imports System.Drawing Imports System.Threading Imports System.Windows.Forms Imports System.IO public class MainClass    Shared counter As Integer    Shared locker As Object = New Object()    Shared Sub Main()         Dim aThread As Thread = New Thread(AddressOf Calculate)         Dim bThread As Thread = New Thread(AddressOf Calculate)         aThread.Start()         bThread.Start()    End Sub    Shared Sub Calculate()         Console.WriteLine("Thread " & Thread.CurrentThread.GetHashCode & " woke up. Counter=" & counter) '        SyncLock locker            Console.WriteLine("In Locker")            Console.WriteLine("1")            Console.WriteLine("2")                        Dim i As Integer = 0            Dim j As Integer = 0                        For i = 0 To 10000                For j = 0  To 10000                                    Next j            Next i            Console.WriteLine("3")            Console.WriteLine("4")            Console.WriteLine("5")  '       End SyncLock         Console.WriteLine("Out Locker")         Console.WriteLine("Thread " & Thread.CurrentThread.GetHashCode & " woke up. Counter=" & counter)     End Sub End Class