相关疑难解决方法(0)

等待池化线程完成

我很抱歉有一个多余的问题.但是,我找到了很多解决我问题的方法,但没有一个解释得很清楚.我希望在这里说清楚.

我的C#应用​​程序的主线程使用ThreadPool生成1..n后台工作者.我希望原始线程锁定,直到所有工人都完成.我特别研究了ManualResetEvent,但我不清楚它的用途.

在伪:

foreach( var o in collection )
{
  queue new worker(o);
}

while( workers not completed ) { continue; }
Run Code Online (Sandbox Code Playgroud)

如果有必要,我会知道即将排队的工人数量.

.net c# multithreading

38
推荐指数
4
解决办法
5万
查看次数

多线程对IO绑定操作有意义吗?

执行多个磁盘操作时,多线程是否有帮助,阻碍或没有区别?

例如,将许多文件从一个文件夹复制到另一个文件夹时.

澄清:我理解,当执行其他操作时,并发性显然会产生影响.如果任务是打开图像文件,转换为另一种格式,然后保存,则可以与图像操作同时执行磁盘操作.我的问题是,当执行的唯一操作是磁盘操作时,是否同时排队和响应磁盘操作更好.

optimization multithreading

33
推荐指数
2
解决办法
1万
查看次数

标签 统计

multithreading ×2

.net ×1

c# ×1

optimization ×1