Thread::Priority Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets or sets a value indicating the scheduling priority of a thread.

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

property ThreadPriority Priority {
	ThreadPriority get();
	[HostProtectionAttribute(SecurityAction::LinkDemand, SelfAffectingThreading = true)]
	void set(ThreadPriority value);

Property Value

Type: System.Threading::ThreadPriority

One of the ThreadPriority values. The default value is ThreadPriority::Normal.

Exception Condition

The thread has reached a final state, such as Aborted.


The value specified for a set operation is not a valid ThreadPriority value.

A thread can be assigned any one of the following priority ThreadPriority values:

  • Highest

  • AboveNormal

  • Normal

  • BelowNormal

  • Lowest

Operating systems are not required to honor the priority of a thread.

The following example shows the result of changing the priority of a thread. Three threads are created, the priority of one thread is set to ThreadPriority::BelowNormal, and the priority of a second is set to ThreadPriority::AboveNormal. Each thread increments a variable in a while loop and runs for a set time.

No code example is currently available or this language may not be supported.

.NET Framework
Available since 1.1
Return to top