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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Почему порожденный процесс запускается как зомби?  (Прочитано 2597 раз)
cupuyc.
Гость
« : Ноябрь 03, 2014, 14:16 »

Всем доброго времени суток.
Пишу мелкое приложение на QT Creator для Linux. Когда запускается приложение я хочу что бы оно выполняло команду линукса:

Код:
int main(int argc, char *argv[])

    {
        MyApplication a(argc, argv);

        QProcess mapProc(&a);

        QString command;
        QStringList args;

        command = "java";
        args << "-jar" << "/home/$USER/MapServer/map.jar" << "localhost" << "9797" << "12123";

        mapProc.start(command, args);

        bool flag  = mapProc.waitForStarted();
        QProcess::ProcessState state = mapProc.state();

        qDebug() << mapProc.errorString();
        qDebug() << mapProc.pid();


    /*/////////////////
    some code
    /////////////////*/

        return a.exec();
    }

но когда я запускаю приложение порожденный процесс уходит в зомби. Почему, что я делаю не так?
Из командной строки все запускается без проблем.
« Последнее редактирование: Ноябрь 03, 2014, 14:17 от cupuyc. » Записан
ammaximus
Гость
« Ответ #1 : Ноябрь 03, 2014, 15:14 »

1. Версия Qt.
2. Только этот процесс запускается как зомби? Пробовали запустить, скажем, yes?
3. Может он просто сразу завершился? waitForStarted() вроде не гарантирует мгновенную передачу управления основному процессу, вполне возможно, что он успевает отработать.
Записан
cupuyc.
Гость
« Ответ #2 : Ноябрь 03, 2014, 15:38 »

разобрался. ему не нравится команда $USER в строке параметра пути. нужно писать константный путь с указанием имени пользователя.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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