Возникла такая идея:
У нас есть основной процесс программы, создаётся дочерний -- в материнском процессе бесконечный цикл который отправляет какие-то данные дочернему не дожидаясь ответа. Как это правильно реализовать? В какую сторону смотреть?
Я пробовал это реализовать через Popen и PIPE ( в качестве stdin и stdout ) и посылать туда запросы через Popen.communicate, но это не сработало, увы, так как communicate ожидает завершения и выводит результат, чего мне не нужно.
P.S. Увы, в многопоточности я не так хорош, как в подборе тегов для вопроса, поэтому не обессудьте.
UPD1
Надумал что-то такое:
main.py
import subprocess
p = subprocess.Popen(['python', 'test1.py'], stdin=subprocess.PIPE)
p.stdin.write(bytes('test1', 'UTF-8'))
test1.py
import sys
f = open('f.txt', 'w+')
f.write(sys.stdin.read()) # f.write(str(sys.stdin.read(), 'UTF-8')) тоже не работает
f.close()
Но это не работает, что не удивительно. Файл всегда пуст.