From: Luca Pisati

Subject: Re: Run-shell-command, timeout and multiprocessing

Date: 2000-12-18 16:43

Clemens Heitzinger wrote:
> > Raimondas Kiveris <ldis.com at rai> writes: >
> > I have following problem: > > > > I have to use run-shell-command in a multithreaded application. > > Run-shell-command with :wait t apparently suspends all other > > threads and if external process takes significant time to complete > > the whole application practically hangs.
> > Try running RUN-SHELL-COMMAND in a separate thread, or new lisp > listener. It seems as if the whole ACL unix process only hangs if you > use RUN-SHELL-COMMAND in the first (main?) lisp process. This should > really be submitted as a bug report (at least, documentation bug > report).
Well, on unix the *common-lisp* buffer is definitively "different". But, even if you run in another thread, the :wait t will block the entire Lisp. Therefore the timeout will not work. As I said in the previous email, I believe that the only way is to implement your own waiting loop. Also, the timeout action could be to sigkill the process, so, you need access to the pid of the process.
> Yours, > Clemens
-- Luca Pisati Director, Software Development Voice: (310) 578-7622 Ext. 550 Winged Edge Technologies Fax: (310) 578-7632 1042 Princeton Drive EMail: <wingededge.com at mailto:pisati> Marina Del Rey, CA 90292 Web: http://www.wingedegde.com