// 创建一个线程池
SmartThreadPool smartThreadPool =
new
SmartThreadPool();
// 执行任务
var
result1 = smartThreadPool.QueueWorkItem(() =>
{
//模拟计算较长时间
Thread.Sleep(5000);
return
3;
});
var
result2 = smartThreadPool.QueueWorkItem(() =>
{
//模拟计算较长时间
Thread.Sleep(3000);
return
5;
});
bool
success = SmartThreadPool.WaitAll(
new
IWorkItemResult[] { result1, result2 });
if
(success)
{
// 输出结果
Console.WriteLine(result1.Result);
Console.WriteLine(result2.Result);
}
联系客服