Запуск исполняемого файла из нескольких потоков через Process.Start () - PullRequest
1 голос
/ 09 мая 2011

Я использую «7z.exe» для выполнения дополнительной работы в моем приложении (c #). Я встроил «7z.exe» в основной исполняемый файл моего приложения в качестве файла ресурсов.Во время выполнения моего приложения я извлекаю «7z.exe» на жесткий диск и запускаю его через Process.Start ().

Мне нужно выполнить «7z.exe» несколько раз и из нескольких потоков.Безопасно ли получать доступ к одному и тому же файлу "7z.exe" из нескольких потоков?или я должен извлечь отдельный «7z.exe» (в другое место на жестком диске) для каждого процесса. Start ()

PS: 7z.exe принадлежит программе Seven-zip, написанной на c / c ++.

Ответы [ 2 ]

3 голосов
/ 09 мая 2011

Да, вы должны иметь возможность запускать несколько процессов из одного и того же исполняемого файла - при условии, что процесс сам ничего не делает для предотвращения этого (что выполнимо - вам нужно проверить на 7-zip).Вы можете определенно не делать то, что вы хотите, используя zip-библиотеку, такую ​​как SharpZipLib ?

0 голосов
/ 09 мая 2011

Да, безопасно запускать один и тот же exe-файл из разных процессов / потоков.

...