[Python-de] Linux fifo in Python-CGI

Stefan Schwarzer sschwarzer at sschwarzer.net
Mon Aug 19 20:19:03 EDT 2002


Hallo Christian,

Christian Rothe wrote:
> Daran liegt es leider auch nicht. Ich habe das ja getestet.
> Standalone arbeitet das Script ordnungsgemäß. Ich starte es, es wartet
>  bis ich von einer anderen Konsole Daten in die FIFO schreibe und ab
>  diesem Moment läuft es unmittelbar weiter. Bis zum ordentlichen Ende.
> Prinzipiell ist allerdings gewünscht, dass die FIFO nicht blockiert,
>  aber den Syntax für den entsprechenden 'open' befehl finde ich nicht.
> In C gibt es da flags wie 'O_NONBLOCK'.

du könntest dir mal das "low-level" os.open anschauen. Dazu gibt es eine Menge
Flags. Soweit ich weiß, entspricht os.open genau der open-C-Funktion. Wenn du willst,
kannst du um das so erzeugte File-Handle auch eine Klasse "herumlegen" (sog. Dekorierer),
damit du eine Schnittstelle bekommst, die sich wie ein "high-level"-Dateiobjekt
verhält.

Ein anderer Punkt, der mir dazu noch einfällt: Es gibt öfter auf comp.lang.python
die Frage, wie man nicht-blockierende Sockets unter Python handhabt. Dabei wird
mitunter auf timeoutsocket verwiesen, das es in den Vaults of Parnassus gibt
(http://www.vex.net/parnassus/). Vielleicht findest du darin Codeteile, die dir bei
deinem Problem weiterhelfen.

Viele Grüße
  Stefan





More information about the Python-de mailing list