EN
C#/.NET - thread name
11
points
In this article we would like to show how to set name for indicated thread in C# / .NET.
Quick solution:
Thread thread = new Thread(...);
thread.Name = "MyThreadName"; // <--------------- custom thread mane
Practical example
using System;
using System.Threading;
namespace Test
{
class Program
{
static void Main(string[] args)
{
Thread.CurrentThread.Name = "MyMainThread";
Thread thread = new Thread(() =>
{
Thread.Sleep(5000);
Console.WriteLine(Thread.CurrentThread.Name + " is stopping");
});
thread.Name = "MyFirstThread";
thread.Start();
Thread.Sleep(5000);
Console.WriteLine(Thread.CurrentThread.Name + " is stopping");
}
}
}
Where:
Thread.CurrentThread
property - keeps reference to currently executed thread objectThread.Name
property - gets and sets thread name
Output:
MyFirstThread is stopping
MyMainThread is stopping
Note:
Thread.Name
helps to identify threads more precisely. In Visual Studio the threads window shows all threads with their names during debugging proces. To display the window use menu: Debug->Window->Threads (this menu is available only during debugging process).