0
Q
并行处理大量进程
A
回答
0
创建一个单场
private volatile int ProcessesStillRunning;
在你开始你的过程,它初始化为正确的值
this.ProcessesStillRunning = 200;
this.StartProcesses(200);
// now wait on your doneEvent
修改您的处理程序,以使该字段递减过程一旦退出
if (System.Threading.Interlocked.Decrement(ref this.ProcessesStillRunning) == 0)
this.doneEvent.Set();
当然,你现在应该知道你的方法不会使用任何.NET内置的并行性限制,只会运行200个进程。那么这是操作系统如何处理这个问题。
相关问题
- 1. 并行处理大量数据
- 2. 应用程序崩溃对图像进行大量处理
- 3. 并行大数据处理
- 4. Python处理大量线程?
- 5. 处理大量
- 6. 处理执行的进程
- 7. 使用Matlab GUI进行并行处理
- 8. 如何将PLINQ进行并行处理?
- 9. 进行并行处理-j命令
- 10. Node.js处理大量并发连接
- 11. 并行处理Python线程
- 12. 线程与并行处理
- 13. C++线程 - 并行处理
- 14. 处理大量的大jpgs
- 15. C++ getaddrinfo不对大URL进行处理
- 16. 使用大数据进行多处理
- 17. 对事件流进行大量处理的最后结果
- 18. 更好的进程来同时处理大量的数据
- 19. Python多处理:最大。池工作进程的数量?
- 20. 从子进程持续处理大量的stdout和stderr
- 21. 使用python的多处理和进程并行编程defunc
- 22. 并行处理分割大图像
- 23. 如何处理并发执行的大量数据(NSOperationQueue或Blocks)
- 24. 在多个CPU环境中并行处理大量函数
- 25. 并行处理
- 26. 并行处理
- 27. 阅读并处理大量带多线程的文件
- 28. 使用多处理进程()进行并行执行的正确方法
- 29. Ajax POST到Python变量进行处理
- 30. 如何准备线程进行处理,并更改正在处理的数据?
即使是现代计算机,同时运行200个程序也需要比平行运行X程序(X等于逻辑处理器数量)更长的时间。你真的需要同时运行它们吗?你不能简单地使用TPL排队工作吗? –
当然不是,我只想让线程池管理最高效的并行作业数量。不幸的是,我使用C#2.0并且不能使用TPL – alex555