[Ecls-list] Changes in MP:PROCESS-JOIN
Juan Jose Garcia-Ripoll
juanjose.garciaripoll at googlemail.com
Tue Jan 19 13:30:17 UTC 2010
- PROCESS-JOIN was exported from the wrong package.
- PROCESS-JOIN would fail when called while a thread was being started.
- The output values of a process or thread are now collected in the process
object and returned by PROCESS-JOIN.
- The interrupt servicing thread must explicitely include the interrupt
signal
among the ones it captures. Otherwise it will never be interrupted
itself.
ECL (Embeddable Common-Lisp) 10.1.1
Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
Copyright (C) 1993 Giuseppe Attardi
Copyright (C) 2000 Juan J. Garcia-Ripoll
ECL is free software, and you are welcome to redistribute it
under certain conditions; see file 'Copyright' for details.
Type :h for Help.
Top level in: #<process SI:TOP-LEVEL 00000001004c0f60>.
> (defvar *a* (mp:process-run-function 'mythread
#'(lambda ()
(catch 'foo (loop (print 1) (sleep 3))))))
1
*A*
>
1
[... many repetitions...]
1
(mp:interrupt-process *a* #'(lambda () (throw 'foo 2)))
T
> 2
2
> *a*
#<process MYTHREAD 00000001028baba0>
> (mp:process-join *a*)
2
--
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/ecl-devel/attachments/20100119/5f16fbd9/attachment.html>
More information about the ecl-devel
mailing list