Process p = new Process();
p.StartInfo.FileName = "program1.exe";
p.Start();
p.WaitForExit();
p.StartInfo.FileName = "program2.exe";
p.Start();
p.WaitForExit();
Я так понимаю, что, скорее всего, нет — надо создавать каждый раз новый объект процесса? Хотя код работает — я проверяла.
Re: Можно ли объект процесса использовать вторично?
Здравствуйте, XJess, Вы писали:
XJ>Здравствуйте, Пельмешко, Вы писали:
П>>Зачем? т___т
XJ>Для экономии на спичках, хотя вряд ли, наверное, что-то будет сэкономлено. А вообще просто интересно, можно ли так делать.
Если у Вас получилось, то можно. Но ни в коем случае не нужно.
Скажите, если создавать два объекта, то наблюдаются ли какие-то тормоза, гигабайты памяти лишней отжираются? На чём экономия? Есть видимые проявления каких-либо проблем?
Почему если класс назван Process (единственное число), то экземпляр Process должен логически представлять более одно исполняемого модуля?
Re[4]: Можно ли объект процесса использовать вторично?
Здравствуйте, Пельмешко, Вы писали:
П>Если у Вас получилось, то можно. Но ни в коем случае не нужно. П>Скажите, если создавать два объекта, то наблюдаются ли какие-то тормоза, гигабайты памяти лишней отжираются? На чём экономия? Есть видимые проявления каких-либо проблем? П>Почему если класс назван Process (единственное число), то экземпляр Process должен логически представлять более одно исполняемого модуля?
Ну да, были у меня такие мысли. Просто хотела проверить.
Re[4]: Можно ли объект процесса использовать вторично?
Здравствуйте, Пельмешко, Вы писали:
П>Если у Вас получилось, то можно. Но ни в коем случае не нужно.
Никакого криминала тут нет.
public bool Start()
{
this.Close(); // предусмотрено - PD
ProcessStartInfo startInfo = this.StartInfo;
if (startInfo.FileName.Length == 0)
{
throw new InvalidOperationException(SR.GetString("FileNameMissing"));
}
if (startInfo.UseShellExecute)
{
return this.StartWithShellExecuteEx(startInfo);
}
return this.StartWithCreateProcess(startInfo);
}
П>Скажите, если создавать два объекта, то наблюдаются ли какие-то тормоза, гигабайты памяти лишней отжираются? На чём экономия? Есть видимые проявления каких-либо проблем?
С этим согласен.
П>Почему если класс назван Process (единственное число), то экземпляр Process должен логически представлять более одно исполняемого модуля?
Этот аргумент не пойдет. Он вполне может представлять собой больше одного модуля в разное время.