Şaf*_*Gür 0 c# task-parallel-library
我使用任务并行库,我需要同步访问方法,但由于任务不一定为异步操作创建线程,我不能依赖使用锁.
void Foo() { lock(SyncRoot) { // Do stuff... } }
如果我想阻止多个任务同时调用Foo,我可以使用什么而不是锁定?我需要我的任务一个接一个地调用Foo.
wei*_*mat 5
来自MSDN:
在幕后,任务排队到ThreadPool,后者已经通过算法(如爬山)进行了增强,这些算法可以确定并调整最大化吞吐量的线程数.
因此,您可以锁定或任何其他线程同步机制,如ManualResetEvent或Memory barrier.
归档时间:
13 年,8 月 前
查看次数:
2105 次
最近记录:
9 年,8 月 前