使用单独线程的任务
如果任务的代码将长时间运行,可以使用TaskCreationOptions.LongRunning来告诉任务创建一个新线程,而不是使用线程池中的线程
示例代码如下
1 class Program 2 { 3 static void Main(string[] args) 4 { 5 Console.WriteLine(System.Threading.Thread.CurrentThread.ManagedThreadId); 6 var t1 = new Task(TaskMethod,TaskCreationOptions.LongRunning); 7 t1.Start(); 8 } 9 10 static void TaskMethod() 11 { 12 Console.WriteLine(System.Threading.Thread.CurrentThread.IsThreadPoolThread); 13 Console.WriteLine(System.Threading.Thread.CurrentThread.ManagedThreadId); 14 } 15 }
运行结果: