Ich habe eine Named Pipe unter Debian mit erstellt mkfifo pipe.in
. Ich möchte diese Pipe von Matlab schreiben.
Dazu verwende ich den folgenden matlab-Befehl:
unix( 'cat <myfile> > pipe.in' )
Wo <myfile>
ist eine Textdatei und pipe.in
ist die Pipe, mit der ich erstellt habe mkfifo
.
In vielen Fällen stürzte der mit der Pipe verbundene Prozess aus verschiedenen Gründen ab (jedoch aus Gründen, die über die Verwendung des Befehls unix und cat hinausgehen). Der Absturz kann in mehreren Fällen normal sein.
Das Ausführen des obigen Befehls führt dazu, dass Matlab einfriert und ich die Kontrolle über Matlab nicht wiedererlangen kann CTRL+C
.
Gibt es eine andere Möglichkeit, Matlab freizugeben, ohne dass ich den Prozess beenden muss?
mkfifo pipe.i; mkfifo pipe.out; time echo "<intern command of the executable>"| <executable> > log &
cat
die Datei ohne die Pipe hast , friert diese ein? Haben Sie versucht, die Pfeife mit matlab zu öffnen fopen
und mit zu schreiben fprintf
?
cat
Befehl im Hintergrund&