[PD] External with separate thread. Do I need to lock?
Miller Puckette
msp at ucsd.edu
Wed May 21 18:16:04 CEST 2014
Hi Rafael -
YOu can indeed pass messages to outlets or objects bound to symbols
from an arbitrary thread, protecting them between a sys_lock() and
sys_unlock() call. You can also maintain your own queue of messages
between the new thread and the Pd thread - this will be more work but
can be made absolutely robust (i.e., not depending on the safety of
the sys_lock() mechanism which I _think_ is safe but one can never be
certain.
cheers
Miller
On Wed, May 21, 2014 at 11:01:33AM -0500, Rafael Vega wrote:
> Hi.
>
> I'm developing an external that starts a separate pthread to poll some
> hardware inputs. When the outputs change, I need to send a message like [34
> 56( to one of two outlets in the external from my thread.
>
> Do I need to use my own mutex? or the sys_lock(), sys_unlock() calls around
> the outlet_whatever() calls? or nothing at all, just call outlet_whatever()?
>
> Anyone cares to give a two line explanation of the logic around this?
>
> Thanks!
>
> --
> Rafael Vega
> email.rafa at gmail.com
> _______________________________________________
> Pd-list at lists.iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
More information about the Pd-list
mailing list