通过Process.Start()从多个线程启动可执行文件

时间:2011-05-09 12:06:13

标签: c# .net multithreading executable process.start

我正在使用“7z.exe”在我的应用程序中做一些额外的工作(c#)。我已将“7z.exe”嵌入到我的应用程序的主可执行文件中作为资源文件。在执行我的应用程序期间,我在硬盘上提取“7z.exe”并通过Process.Start()执行它。

我需要多次执行“7z.exe”并从多个线程执行。 从多个线程访问相同的“7z.exe”文件是否安全?或者我应该为每个进程提取单独的“7z.exe”(到硬盘上的不同位置).Start()

PS:7z.exe属于使用c / c ++编写的Seven-zip软件。

2 个答案:

答案 0 :(得分:3)

是的,您应该能够从同一个可执行文件启动多个进程 - 假设该进程本身没有做任何事情来阻止(这是可行的 - 您必须检查7-zip)。你绝对不能使用像SharpZipLib这样的zip库来做你想做的事吗?

答案 1 :(得分:0)

是的,从不同的进程/线程执行相同的exe文件是安全的。