[Python-de] Zeilengepuffertes r/w
Jens Diemer
python_gmane at jensdiemer.de
Di Aug 30 14:43:20 CEST 2011
Was ist mit l.flush() ?
Am 30.08.2011 13:53, schrieb Ole Streicher:
> Hallo Gruppe,
>
> wie bekomme ich eine zeilengepufferte Kommunikation zwischen zwei
> Scripten hin? Ich habe folgende zwei Mini-Programme:
>
> Sender:
> ----------------------8<-----------------
> import time
> l = open('myfifo',mode='w',buffering=1)
> while True:
> s = 'einszweidrei'
> l.write(s + '\n')
> print s
> time.sleep(1)
> ----------------------8<-----------------
>
> Empfänger:
> ----------------------8<-----------------
> l = open('myfifo', buffering=1)
> for line in l:
> print line
> ----------------------8<-----------------
>
> wobei "myfifo" eine (per mkfifo angelegter) named pipe ist.
> Lasse ich jetzt die beiden laufen, erscheinen die Ausgaben im zweiten
> Programm stark verzögert, trotz des "line buffers", welches
> eingeschaltet war.
>
> Warum ist das so und wie kann ich das ändern?
>
> Viele Grüße
>
> Ole
> _______________________________________________
> python-de maillist - python-de at python.org
> http://mail.python.org/mailman/listinfo/python-de
>
--
Mfg.
Jens Diemer
----
http://www.jensdiemer.de
Mehr Informationen über die Mailingliste python-de