使用ThreadPool和WaitCallback方法与简单方法之间有什么区别
问题描述:
选项1和选项2之间的区别是什么?使用ThreadPool和WaitCallback方法与简单方法之间有什么区别
选项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封装该方法。此方法调用也在主线程以外的其他线程上。
简单方法:此方法调用在主线程中执行。