Export (0) Print
Expand All

Thread Constructor (ThreadStart)

Initializes a new instance of the Thread class.

Namespace:  System.Threading
Assembly:  mscorlib (in mscorlib.dll)

public Thread(
	ThreadStart start
)

Parameters

start
Type: System.Threading.ThreadStart

A ThreadStart delegate that represents the methods to be invoked when this thread begins executing.

ExceptionCondition
ArgumentNullException

The start parameter is null.

A thread does not begin executing when it is created. To schedule the thread for execution, call the Start method.

NoteNote

Visual Basic users can omit the ThreadStart constructor when creating a thread. Use the AddressOf operator when passing your method for example Dim t As New Thread(AddressOf ThreadProc). Visual Basic automatically calls the ThreadStart constructor.

The following code example shows how to create a thread that executes a static method.

using System;
using System.Threading;

class Test
{
    static void Main() 
    {
        Thread newThread = 
            new Thread(new ThreadStart(Work.DoWork));
        newThread.Start();
    }
}

class Work 
{
    Work() {}

    public static void DoWork() {}
}

The following code example shows how to create a thread that executes an instance method.

using System;
using System.Threading;

class Test
{
    static void Main() 
    {
        Work threadWork = new Work();
        Thread newThread = 
            new Thread(new ThreadStart(threadWork.DoWork));
        newThread.Start();
    }
}

class Work 
{
    public Work() {}

    public void DoWork() {}
}

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8
Show:
© 2015 Microsoft