Russian Qt Forum
Ноябрь 25, 2024, 02:02 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Вопрос по QProcess  (Прочитано 5753 раз)
merke
Гость
« : Ноябрь 26, 2010, 08:20 »

Всем привет!

В чем отличие между:

startDetached();
start();
execute();

 Непонимающий
Записан
BRE
Гость
« Ответ #1 : Ноябрь 26, 2010, 08:25 »

 Строит глазки
А что написано в документации?
Записан
merke
Гость
« Ответ #2 : Ноябрь 26, 2010, 08:31 »

Документацию я читал! Смеющийся

Только вот можно нашим великим русским языком всё это объяснить?)

Потому что в документации везде написано что создается новый процесс, так и ежу понятно что создается новый процесс.)
Записан
BRE
Гость
« Ответ #3 : Ноябрь 26, 2010, 08:36 »

Я тебе ключевые моменты выделил.  Улыбающийся

bool QProcess::startDetached ( const QString & program, const QStringList & arguments ) [static]
Starts the program program with the given arguments in a new process, and detaches from it. Returns true on success; otherwise returns false. If the calling process exits, the detached process will continue to live.

void QProcess::start ( const QString & program, const QStringList & arguments, OpenMode mode = ReadWrite )
Starts the given program in a new process, if none is already running, passing the command line arguments in arguments. The OpenMode is set to mode.
The QProcess object will immediately enter the Starting state. If the process starts successfully, QProcess will emit started(); otherwise, error() will be emitted. If the QProcess object is already running a process, a warning may be printed at the console, and the existing process will continue running.

int QProcess::execute ( const QString & program, const QStringList & arguments ) [static]
Starts the program program with the arguments arguments in a new process, waits for it to finish, and then returns the exit code of the process. Any data the new process writes to the console is forwarded to the calling process.
Записан
merke
Гость
« Ответ #4 : Ноябрь 26, 2010, 08:47 »

Т.е. если мне надо запустить процесс и пофиг что с ним будет в дальнейшем то выбираю startDetached() И даже если родитель будет убит процесс будет жить своей жизнью. Хорошо как раз что мне нужно.

Теперь если мне нужно запустить процесс и дождаться его завершения дабы получить код завершения то я использую либо start() или execute() И я так понимаю если родитель будет убит то и стартованные процессы также будут убиты?
Записан
BRE
Гость
« Ответ #5 : Ноябрь 26, 2010, 09:03 »

Один из плюсов программирование в том, что тебе не нужно делать сложных утомительных действий, что бы проверить интересующую тебя вещь. Можно быстро набросать небольшой пример и попробовать все в действии, поэкспериментировать с этим кодом, .... Тебе это не интересно? Подмигивающий
Записан
merke
Гость
« Ответ #6 : Ноябрь 26, 2010, 09:29 »

в точности так и делаю в большинстве случаев Подмигивающий просто люблю задавать вопросы)))
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.12 секунд. Запросов: 21.