[Openmcl-devel] Problems with RUN-PROGRAM
gb at clozure.com
Tue Nov 19 01:39:04 UTC 2002
On Mon, 18 Nov 2002, Marco Antoniotti wrote:
> OS X 10.2 Jaguar.
> ? (run-program "ls" ())
> #<EXTERNAL-PROCESS  (EXITED : 0) #x5398B7E>
> ? (run-program "ls" () :output *standard-output*)
Somewhat questionably, RUN-PROGRAM's OUTPUT keyword arg defaults to
NIL, which causes any output from the EXTERNAL-PROCESS to be discarded;
it's necessary to say something like:
? (run-program "ls" () :output t)
to get "ls"'s output sent to the listener. ":OUTPUT T" would probably
be a more reasonable default; I believe that it's at least behaving
> ... hangs or displays funky error message (like "Unbound Variable
> Any clues about why this would be failing?
There's a usually-dormant lisp thread that's supposed to wake up
whenever an EXTERNAL-PROCESS is created and is supposed to stay
awake as long as some EXTERNAL-PROCESS has pending I/O or unresolved
There was a bug in 0.13 whereby that lisp thread went back to sleep
too early; that could explain hanging and other funkiness. That
was supposed to have been fixed in 0.13.1, and I can't reproduce the
bug with that fix in place.
If you're running 0.13.1 and still see this, I'm puzzled. If you
can get to a break loop when it's hung, are either of the variables
CCL::*EXTERNAL-PROCESSES* or CCL::*WATCHED-FD-HANDLERS* non-NIL ?
(The "watchdog" thread is supposed to stay awake if so.)
> Marco Antoniotti ========================================================
> NYU Courant Bioinformatics Group tel. +1 - 212 - 998 3488
> 715 Broadway 10th Floor fax +1 - 212 - 995 4122
> New York, NY 10003, USA http://bioinformatics.cat.nyu.edu
> "Hello New York! We'll do what we can!"
> Bill Murray in `Ghostbusters'.
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
Openmcl-devel mailing list
Openmcl-devel at clozure.com
More information about the Openmcl-devel