使用带有 WaitCallback 方法的 ThreadPool 与简单方法有什么区别

What's the difference between using ThreadPool with WaitCallback method vs simple method

选项 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);
}

注:"WaitCallback"表示要执行的方法

选项1:显式调用WaitCallback,将方法排队等待执行。并且此方法调用在与主线程不同的线程上。

选项 2:.NET 框架将使用 WaitCallback 包装该方法。此方法调用也在与主线程不同的线程上。

简单方法:该方法调用在主线程中执行。