Постоянный подпроцесс Python

Есть ли способ сделать вызов подпроцесса в python "постоянным"? Я вызываю программу, загрузка которой занимает некоторое время несколько раз. Поэтому было бы здорово, если бы я мог просто оставить эту программу открытой и общаться с ней, не убивая ее.

Мультяшная версия моего скрипта python выглядит так:

for text in textcollection:
    myprocess = subprocess.Popen(["myexecutable"],
                stdin = subprocess.PIPE, stdout = subprocess.PIPE,
                stderr = None)
    myoutputtext, err = myprocess.communicate(input=text)

Мне нужно обрабатывать каждый текст отдельно, поэтому объединение всего этого в один большой текстовый файл и обработка его один раз не вариант.

Предпочтительно, если есть такой вариант

myprocess = subprocess.Popen(["myexecutable"],
            stdin = subprocess.PIPE, stdout = subprocess.PIPE,
            stderr = None)    for text in textcollection:
for text in textcollection:
    myoutputtext, err = myprocess.communicate(input=text)

, где я могу оставить процесс открытым, я был бы очень признателен.

10
задан JasonMond 23 January 2012 в 23:20
поделиться