How to send a value to another thread in VB.NET

2 Answers

0 votes
Imports System
Imports System.Threading

Class Program
	Public Shared Sub Main()
        Console.WriteLine("main 1")
		Dim thread As Thread = New Thread(New ParameterizedThreadStart(AddressOf ThreadMethod))
        thread.Start("Hello from another thread")
		Console.WriteLine("main 2")
    End Sub

    Public Shared Sub ThreadMethod(ByVal obj As Object)
        Dim message As String = CStr(obj)
		
        Console.WriteLine(message)
    End Sub
End Class



' run:
'
' main 1
' main 2
' Hello from another thread
'

 



answered Apr 19, 2025 by avibootz
0 votes
Imports System
Imports System.Threading

Class Program
	Public Shared Sub Main()
        Dim message As String = ""

        Using readyEvent = New ManualResetEvent(False)
            Dim thread = New Thread(Sub()
                                        readyEvent.WaitOne()
                                        Console.WriteLine(message)
                                    End Sub)
            thread.Start()
            message = "Hello from another thread"
            readyEvent.[Set]()
            thread.Join()
        End Using
    End Sub
End Class



' run:
'
' Hello from another thread
'

 



answered Apr 19, 2025 by avibootz
...