|
|
1
2
您可以使用并行扩展,它将集成在C#4.0中,并可作为单独的库用于C#3.5,您可以在此处下载: Microsoft Parallel Extensions to .NET Framework 3.5 .
|
|
|
2
2
如果你真的想把它交给其他线程,你应该使用ThreadPool。至于等待线程完成,您可以使用等待句柄在线程之间发送信号。 |
|
|
3
1
|
|
4
0
最简单的方法可能是等待4.0中的并行框架。 现在,对于初学者来说,你需要小心那里的线程创建。如果你有数百甚至数千个项目,这些代码可能会扼杀你的应用程序,或者至少是你的性能。 我会尝试设计 添加数据 IAsyncResult 有一个WaitHandle。您可以等待这些句柄,直到所有asyncresults都声明操作已完成。然后可以继续。异步执行此操作应确保使用线程池中的线程。这样,您可以获得相当好的性能,如果您的列表变得非常大,您可以达到工作线程的自然饱和。 |
|
5
-1
存储对您创建的线程对象的引用,并对每个对象调用join:
|
|
|
user107586 · 如何处理等待句柄不会导致无限循环? 1 年前 |
|
|
ron burgundy · 获取-释放语义是否跨线程传递?[副本] 1 年前 |
|
|
BenjiFB · C#内存缓存:在一次操作中追加到列表? 1 年前 |
|
|
András Takács · Python多线程问题 1 年前 |
|
|
András Takács · Python多线程错误 1 年前 |