Многопоточный запуск приложения с выводом?

Необходимо в несколько потоков с помощью python запускать cli приложение, которое выводит данные в stdout и stderr. Для каждого потока этот вывод нужно куда-то сохранить, хоть в переменную, хоть в файл. Пока что получилось создать несколько потоков, но к сожалению вывод идет вразнобой со всех запущенных потоков.
  • Вопрос задан
  • 4679 просмотров
Пригласить эксперта
Ответы на вопрос 2
mage
@mage
Можно перенаправить вывод дочерних процессов в отдельный пайп или файл, используя subprocess.Popen.
Тут документация по этому модулю: docs.python.org/library/subprocess.html
Тут можно посмотреть пример: stackoverflow.com/questions/9283770/logging-process-stdin-and-stdout
Ответ написан
alternativshik
@alternativshik
А можно складывать в queue результаты и потом оттуда забрать по окончании
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы