M
motus
Gast
Hallo,
ich versuche zur Zeit mit einem externem Programm mit Hilfe von Linux Pipes zu kommunizieren, aber es will einfach nicht klappen.
Das Programm erwartet auf einer Pipe die Eingabe eines codierten Strings und schreibt die decodierte Nachricht (im XML-Format) in eine zweite Pipe, sowie die Fehlerausgabe in eine dritte.
Das Problem ist, dass wenn ich mit Hilfe von
auf die Pipe zugreifen will, das Programm solange stehen bleibt, bis das externe Programm etwas in die Pipe schreibt.
Dies geschieht aber erst, wenn ich mit Hilfe z.B. eines PrintWriters etwas in die Eingangspipe gschrieben habe. Dies ist ja aber dann nicht moeglich, da das Programm steht.
Wenn ich das vorher mache, ist die Ausgabe schon wieder verschwunden, bevor ich darauf zugreifen kann.
Ich hab es auch schon mit einem Thread probiert, in dem das File geoeffnet werden soll, um dann im Nachhinein etwas in die Eingangspipe zu schreiben. Hier habe ich aber trotzdem eine Timing-Problem, da ich nicht weiss, ob der Thread schon soweit ist und schon an der entsprechenden Pipe liest.
Kann mir da jemand helfen? Bin hier schon langsam am verzweifeln.
Ciao
Henning
ich versuche zur Zeit mit einem externem Programm mit Hilfe von Linux Pipes zu kommunizieren, aber es will einfach nicht klappen.
Das Programm erwartet auf einer Pipe die Eingabe eines codierten Strings und schreibt die decodierte Nachricht (im XML-Format) in eine zweite Pipe, sowie die Fehlerausgabe in eine dritte.
Das Problem ist, dass wenn ich mit Hilfe von
Code:
File temp = new File("entsprechende Pipe");
Dies geschieht aber erst, wenn ich mit Hilfe z.B. eines PrintWriters etwas in die Eingangspipe gschrieben habe. Dies ist ja aber dann nicht moeglich, da das Programm steht.
Wenn ich das vorher mache, ist die Ausgabe schon wieder verschwunden, bevor ich darauf zugreifen kann.
Ich hab es auch schon mit einem Thread probiert, in dem das File geoeffnet werden soll, um dann im Nachhinein etwas in die Eingangspipe zu schreiben. Hier habe ich aber trotzdem eine Timing-Problem, da ich nicht weiss, ob der Thread schon soweit ist und schon an der entsprechenden Pipe liest.
Kann mir da jemand helfen? Bin hier schon langsam am verzweifeln.
Ciao
Henning