什么是Threadpool的替代品?
我有这段代码:什么是Threadpool的替代品?
public void GenerateImageAsync(Area area)
{
ThreadPool.QueueUserWorkItem(threading =>
{
ready.Reset();
GenerateImage(area);
ready.Set();
});
}
你能告诉我怎样才能改变它,或者使用线程池的替代方案?
您可以使用一个任务,这将在这样的线程池创建线程:
public void GenerateImageAsync(Area area)
{
Task.Run(() => {
ready.Reset();
GenerateImage(area);
ready.Set();
});
}
或实际的主题是这样的:
public void GenerateImageAsync(Area area)
{
new Thread(() => {
ready.Reset();
GenerateImage(area);
ready.Set();
}).Start();
}
他们中的任何一个如何取代ThreadPool?有线程和线程池之间的区别.http://*.com/questions/230003/thread-vs-threadpool – lazy
@lazy你是什么意思*线程仍然不是一个托管线程?* –
那么一个新的线程是另一个线程池,我添加了任务,因为我不确定OP是否意味着ThreadPool类或实际的线程池。 –
为什么你需要去改变它 - 问题是什么? –
是的,我想改变它。我想用一些不同的线程来代替线程池 – Giga
为什么你想避免'ThreadPool'?那有什么问题? –