execute-with-interface requirements
Does anyone know if one must use execute-with-interface to access slots created with define-interface? (define-interface name superclasses SLOTS &rest options) I'm trying to peek inside of an interface to see if there is work to be done from another process (part of the wake function for that other process). That works in CLIM but now that I'm trying to rejigger things for CAPI I wonder if I have to change the approach. (in other words, my interface has a work queue, but that work queue is processed by a thread other than the one CAPI thread on a Mac (in CLIM it got processed in that CLIM thread so no worries). So I need that thread to sleep when the queue is empty, and the wake function checks to see if there is something waiting. The work queue lives in the interface because the interface adds work to it based on user activity. Given all the changes to MP since LW5, I wonder if maybe I shouldn't just reimplement with a mailbox or some such; I avoided this for cross-implementation purposes before but….) Thanks!