2012/10/20 Asten, W.G.G. van (Wilfried, Student M-CSC) <w.g.g.vanas...@student.utwente.nl>: > Would you be happy with a solution like this: > > - First create two handles to two files in the tmp directory > - Then use StdStream's UseHandle to redirect std_err and std_out > (using CreatePipe for std_in) to these files > - Then write your query to the Handle for std_in > - waitForProcess > - Collect std_out and std_err from the temporary files. > > If that is not satisfactory you may want to check out conduit-process > (http://hackage.haskell.org/packages/archive/process-conduit/0.5.0.2/doc/html/src/Data-Conduit-Process.html#conduitProcess) > that also does some interaction with a process and interleaves std_in > and std_out. It should not be to hard to combine std_err into that > concept. I also faced this same problem and in one case solved it by > using a temporary file to hold my content which was also deleted > afterwards (This immediately prevented the content building up in > memory).
For my application, it's important to be able to run multiple queries against the same Bash session. Waiting for Bash to shut down is thus not a viable way to finalize the response. Perhaps I can spawn two cats with their outputs connected to the FIFOs and wait for them to terminate. -- Jason Dusek pgp // solidsnack // C1EBC57DC55144F35460C8DF1FD4C6C1FED18A2B _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe