Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 14, 2010 22:14:14

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

лог вывода дочернего процесса

Сейчас это - открытый вопрос.
Кажется, вам стоить прочитать http://python.org/dev/peps/pep-3145/



Офлайн

#2 Сен. 15, 2010 14:45:38

Alex2ndr
От:
Зарегистрирован: 2009-12-26
Сообщения: 204
Репутация: +  0  -
Профиль   Отправить e-mail  

лог вывода дочернего процесса

Интересная тема. А если сделать хитро?
Т е создаем 2 потока(может даже процесса). В первом запускаем cmd, и направляем stdout не в канал а в файл. Во втором потоке читаем этот файл и получаем оттуда stdout. Не очевидно, конечно, но возможно будет работать. Сам пока не пробовал - только предложил идею. Предвижу возможные проблемы с тем, что данные в файл будут попадать не сразу а спустя какое-то время(т е вывод будет кешироваться).



Офлайн

#3 Сен. 15, 2010 15:07:01

bum-bayan
От:
Зарегистрирован: 2010-09-03
Сообщения: 18
Репутация: +  0  -
Профиль   Отправить e-mail  

лог вывода дочернего процесса

Эта идея с двумя потоками(или процессами) уже была опробована. Все бы хорошо, только вот запускаетый скритп когда ждет действия пользователя примерно 10 раз в секунду обновляет последнюю строку своего вывода, таким образом все это будет кидаться в логфайл.



Отредактировано (Сен. 15, 2010 15:07:39)

Офлайн

#4 Сен. 16, 2010 14:11:21

bum-bayan
От:
Зарегистрирован: 2010-09-03
Сообщения: 18
Репутация: +  0  -
Профиль   Отправить e-mail  

лог вывода дочернего процесса

Есть мысль использовать модуль pexpect. Если кто в курсе, скажите, поможет ли он решить описанную в посте #10 проблему.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version