使用带有 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 包装该方法。此方法调用也在与主线程不同的线程上。
简单方法:该方法调用在主线程中执行。
选项 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 包装该方法。此方法调用也在与主线程不同的线程上。
简单方法:该方法调用在主线程中执行。