Seite 1 von 1

Named pipe, queue, io-module, fifo

Verfasst: Samstag 19. September 2020, 17:32
von christofj
Hallo zusammen,

ich möchte Daten in einem Skript adressbasiert zwischenspeichern.
Zur Zeit frage ich Daten aus einer Queue ab und verarbeite diese weiter.
Zukünftig möchte ich die Daten nach Typen (Adressen) zwischenspeichern und zwar so:
Daten vom Typ "A" in FIFO-'A'
Daten vom Typ "B" in FIFO-'B'
Daten vom Typ "C" in FIFO-'C'
usw.
Wenn die Queue leer ist will ich die FIFO speicher nacheinander auslesen und die Daten daraus weiter verarbeiten.

Bis jetzt habe ich versucht mit os.mkfifo() dies zu realisieren aber da ich kein weiteres Skript starten möchte funktioniert es nicht (oder ich kann es nicht :roll: ).

Gibt es eine einfache Möglichkeit einen FIFO Zwischenspeicher zu realisieren? (adressierbare Listen würde im Grunde auch reichen).

Tipps und Gedankenanstöße sind willkommen.
Danke schon mal.

Re: Named pipe, queue, io-module, fifo

Verfasst: Samstag 19. September 2020, 17:45
von nezzcarth
Fifos/Named Pipes werden unter Unix (und nur da funktioniert os.mkfifo) in erster Linie zur Interprozess-Kommunikation verwendet. Ich verstehe nicht so ganz, weshalb du sie hier brauchst. Reichen nicht normale (temporäre) Dateien? Fifos sind zwar interessant, aber die Fälle, wo man sie beim Programmieren wirklich das Mittel der Wahl sind, kann man meiner Meinung nach an einer halben Hand abzählen.

Re: Named pipe, queue, io-module, fifo

Verfasst: Samstag 19. September 2020, 17:52
von christofj
Ich nutze das Skript auch nur unter Linux.
Ich habe gedacht wenn ich für jeden Datensatz den ich aus der Queue auslese die Datei öffne reinschreibe und schließe dauert das. Ich würde das gern effektiv machen.

Re: Named pipe, queue, io-module, fifo

Verfasst: Samstag 19. September 2020, 18:16
von Sirius3
Was ist denn diese Queue, und was meinst Du mit Zwischenspeichern?
Mir ist nicht klar, was Du da wirklich machen willst. Vielleicht kannst Du Code posten, der das, was Du machenwillst illustriert.

Re: Named pipe, queue, io-module, fifo

Verfasst: Montag 21. September 2020, 11:48
von DasIch
Wieviele Daten hast du in dieser Queue?

Re: Named pipe, queue, io-module, fifo

Verfasst: Montag 21. September 2020, 13:21
von sparrow
@christofj: Leg mal dein Grundproblem dar. Es scheint, als würdest du versuchen darauf die falsche Lösung anzuwenden. Zumindest sehe ich da gewisse Widersprüche in deine Posts. Wenn du das Problem erklärst, ist die Lösung deutlich einfacher zu finden.