【发布时间】:2015-11-01 16:39:53
【问题描述】:
我想使用Pcap.Net DLL 编写应用程序。
我的应用程序获得了几个PCAP 文件并发送了所有数据包。
现在我想添加并发发送多个文件的选项,并想知道什么是最好的\有效的方式来做到这一点。
我有我的应用程序获取的文件集合,我正在考虑将Parallel.ForEach 与MaxDegreeOfParallelism 属性一起使用,或者可能是我可以使用并且有用的其他方式。
【问题讨论】:
-
几个问题,文件有多大?还有你在和他们做什么?如果它们很小并且不需要使用并行,我不会。
-
您是通过 HTTP 上传它们还是什么?你能发布一个代码示例吗
-
这完全取决于您在程序“获取”文件时对文件所做的操作。请解释更多您对传入文件所做的事情,如果您所做的只是将它们写入磁盘,那么使其并行将使整个事情变得更慢,而不是更快,因为开销成本超过了您将获得的收益。但是,如果您正在执行任何类型的 CPU 密集型工作,则并行执行可能会有所帮助。
-
Parallel 很有用,但请注意,它是一种多线程方法,因此从不同线程访问 var 是一个真正的问题