[python] subprocess, pipes

Koumes21 koumes21 na gmail.com
Středa Říjen 10 21:02:46 CEST 2007


Dobrý den,
udělal jsem si dva jednoducé prográmky abych si vyzkouše
komunikaci mezi procesy. Jeden z nich jednoduše vypisuje to, co do něj
napíšete:

import sys

while 1:
    c1=sys.stdin.read(1)
    sys.stdout.write(c1)
    sys.stdout.flush()

Tento první jsem změnil na exe soubor modulem py2exe.
Druhý program spustí ten první a posílá do něj to co uživatel
napíše a to co se vrátí tiskne na obrazovku:

import subprocess,sys,thread

pipe = subprocess.Popen("server.exe",
stdin=subprocess.PIPE,
stdout=subprocess.PIPE)

def reciever():
    while 1:
        c1=pipe.stdout.read(1)
        sys.stdout.write(c1)

thread.start_new(reciever,())

while 1:
....c1=sys.stdin.read(1)
....pipe.stdin.write(c1)

Je mi jasné, že program není ještě dokončený, ale jde o princip.
V tomto okamžiku vše správně funguje. Já bych ale potřeboval,
aby se "server" nezapínal jako podproces, ale aby například oba
programy zapnul uživatel a oni se sami poznaly a začaly spolu
komunikovat. Kdyby někdo věděl a poradil mi, budu mu jistě vděčný.

Koumes21
------------- další část ---------------
HTML příloha byla odstraněna...
URL: http://www.py.cz/pipermail/python/attachments/20071010/fb1cf193/attachment.htm 


Další informace o konferenci Python