Named pipe, queue, io-module, fifo

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
christofj
User
Beiträge: 13
Registriert: Montag 10. Dezember 2018, 11:04

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.
nezzcarth
User
Beiträge: 1632
Registriert: Samstag 16. April 2011, 12:47

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.
christofj
User
Beiträge: 13
Registriert: Montag 10. Dezember 2018, 11:04

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.
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

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.
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Wieviele Daten hast du in dieser Queue?
Benutzeravatar
sparrow
User
Beiträge: 4164
Registriert: Freitag 17. April 2009, 10:28

@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.
Antworten