使用ThreadPool和WaitCallback方法与简单方法之间的区别是什么

时间:2016-12-07 04:26:43

标签: c# multithreading concurrency threadpool

选项1和选项2之间的区别是什么?

选项1

WaitCallback callback = new WaitCallback(PrintMessage);
ThreadPool.QueueUserWorkItem(callback, "Hello");

选项2

ThreadPool.QueueUserWorkItem(PrintMessage, "World");

简单方法:

static void PrintMessage(object obj)
{
   Console.WriteLine(obj);
}

1 个答案:

答案 0 :(得分:3)

注意:“WaitCallback”表示要执行的方法。

选项1:显式调用WaitCallback,以便为执行方法排队。并且此方法调用位于主线程以外的其他线程上。

选项2:.NET框架将使用WaitCallback包装方法。此方法调用也在主线程以外的其他线程上。

简单方法:此方法调用在主线程本身中执行。