[PD-dev] setting receive
Krzysztof Czaja
czaja at chopin.edu.pl
Tue Sep 10 19:58:18 CEST 2002
hi,
most probably I am overlooking something, but if not, there seem
to be two easy ways:
1. counting 'outlet_' calls being executed, and handling the 'set'
message only if the counter is 0;
2. calling clock_delay(..., 0) in a 'set' method, and performing
the un/binding in a separate event.
One other thing -- if Pd/receive is to be compatible with
max/receive, then it is only the object *without an argument* to
get its inlet, and handle the 'set' message. So, anyway, there
would be *no overhead* in case of the objects with an argument
(all that are in use now).
A sketch showing an easy way 2. is in the attachment.
Krzysztof
Miller Puckette wrote:
...
> I don't think it's enough simply to insist that "set" messages come through
> the inlet; there could still be people traversing either the new or
> the old symbol somewhere up the stack.
>
> I think the only solution would be somehow to detect reentrancy and refuse
> to bind or unbind something to a symbol reentrantly. I just can't think of a
> really efficient way to do this...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: receive.c
Type: text/x-csrc
Size: 2800 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-dev/attachments/20020910/f20de49d/attachment.c>
More information about the Pd-dev
mailing list