Название: Запуск QProcess из QThread Отправлено: Sokoloff от Октябрь 25, 2009, 11:38 Не могу до конца понять как запустить процесс (QProcess) из потока. Написал так:
Код
Запускаю 2 потока, Код
Потоки запускаются, отображают листинги. Но через некоторое количество итераций, один из процессов не может стартовать, т.е. метод proc.waitForStarted(5000) отваливается по таймауту. Перечитал документацию, и не могу понять, я что-то неправильно делаю, это глюк в PyQt, или глюк на моей конкретной машине? Еще прочитал, что для работы в QThread нужно запустить "event loop" с помощью exec(), но куда его вставить? Если до моего кода, то до кода собственно дело и не дойдет ("event loop" будет крутиться до exit-а), а если после создания QProcess, то ошибка произойдет до вызова exec. Или в данном случае "event loop" не причем? P.S. Пример демонстрационный. Kubuntu 9.04, libqt4-dev - 4.5.2, python-qt4 - 4.5.4 Название: Re: Запуск QProcess из QThread Отправлено: BRE от Октябрь 25, 2009, 12:18 Сделал подобный пример:
Код
Подождал минуты 3, все крутиться. Цитировать Потоки запускаются, отображают листинги. Но через некоторое количество итераций, один из процессов не может стартовать Сколько итераций нужно ждать?Название: Re: Запуск QProcess из QThread Отправлено: Sokoloff от Октябрь 25, 2009, 20:27 Подождал минуты 3, все крутиться. Сколько итераций нужно ждать? Какие у тебя дистрибутив, Qt и PyQt? Т.е. код правильный? Название: Re: Запуск QProcess из QThread Отправлено: BRE от Октябрь 25, 2009, 20:33 Какие у тебя дистрибутив, Qt и PyQt? qt-4.5.2-3.fc10.i386PyQt4-4.5.4-1.fc10.i386 Название: Re: Запуск QProcess из QThread Отправлено: Sokoloff от Октябрь 26, 2009, 01:25 Спасибо
|