Best new thread no cross thread vb.net

In VB.NET, you can use the Thread class to create a new thread that does not cross-thread (i.e., does not access shared state from multiple threads). Here are a few ways to do it:

Method 1: Using the Thread constructor

Dim t As New Thread(AddressOf MyThreadMethod)
t.Start()

In this example, MyThreadMethod is a method that will be executed on the new thread. Make sure to mark the method as Shared if it's a shared method.

Method 2: Using the Thread constructor with a delegate

Dim t As New Thread(New ThreadStart(AddressOf MyThreadMethod))
t.Start()

This is similar to the previous example, but uses a ThreadStart delegate to specify the method to execute on the new thread.

Method 3: Using the Task class (in.NET 4.0 and later)

Dim t As Task = Task.Run(Function() MyThreadMethod())

In this example, MyThreadMethod is a method that will be executed on a new thread. The Task.Run method creates a new task that runs the method on a thread pool thread.

Method 4: Using the Parallel class (in.NET 4.0 and later)

Parallel.Invoke(AddressOf MyThreadMethod)

In this example, MyThreadMethod is a method that will be executed on a new thread. The Parallel.Invoke method creates a new task that runs the method on a thread pool thread.

In all cases, make sure to follow best practices for multithreading in VB.NET, such as:

Remember to test your code thoroughly to ensure it works correctly in a multithreaded environment.