[Openmcl-devel] Asynchronous callback made from real-time thread

Letz Stephane letz at rd.grame.fr
Sat May 31 00:40:10 PDT 2003

>I hope that you now know much more than you wanted to about some
>parts of the problem; in particular, I hope that it's clear that
>the problem isn't running code "asynchronously" in 0.14 (all code
>runs "asynchronously", in that lisp isn't scheduling it) so much
>as it is the fact that lisp didn't create the thread that's making
>the callback and needs to do some things to make it look like it
>would if it -had- created it.

Thanks a lot for all explanation. Things are much clearer now.

I guess the simpler solution right now if to implement a blocking 
call for incoming Midi events and use a Lisp created thread to read 

>Getting foreign threads to be treated like processes (making the
>value of *CURRENT-PROCESS* meaningful, having lisp PROCESS objects
>for them, having them show up in (ALL-PROCESSES) and :PROC, etc)
>is harder than just allocating a TCR would be.  If your event handler
>callback can refrain from thinking that it's running in a lisp process,
>there isn't much new code involved in creating a TCR; getting the other
>stuff to work would probably require some ABI changes.

Do you plan to implement the get_tcr() stuff and all what would be 
needed to implement the "complex" solution at some point?



Openmcl-devel mailing list
Openmcl-devel at clozure.com

More information about the Openmcl-devel mailing list