ECL now implements asynchronous signal handlers through a secondary thread
and these handlers can now be customized. The interface is given by the
functions
(EXT:GET-SIGNAL-HANDLER signal-code)
(EXT:SET-SIGNAL-HANDLER signal-code closure-or-symbol)
where the signal handler function should have the signature (LAMBDA (&KEY
PROCESS)).
On a multithreaded ECL, instead of having a thread that relies on
sigwait(), we have a thread that gets messages from other threads, which
are the ones that received the signals. In principle we could optionally
add a feature such that these threads get suspended until the signal is
processed. This does not seem critical to me, but it might help cope with
the problem of synchronous signals (SIGSEGV, SIGFPE, etc) which are not
allowed to execute arbitrary code.
In any case, these are refinements for the future. I would like to ask you
to help debugging and perfect the changes I just introduced, and which for
me are the final milestone for a release (apart from testing and
integrating the ASDF extensions).
Juanjo
--
Instituto de FĂsica Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Ecls-list mailing list
Ecls-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ecls-list