zo******@interia.pl (Marcin Kielar) wrote in
news:ea**************************@posting.google.c om:
hello
i'm searching for algorithm able to detect and resolve conflicts
during recursive event propagation.
I'd like to implement small message passing framework without using
message queue - messages
would be delivered by simple method calls. This leads to recursive
message ordering instead of
natural one - and thus sometimes may cause problems. I know there are
algorithms that detect this
situation and block problematic messages for later delivery. Such
algorithm is used in blackbox
(component pascal/oberon) framework, but i'm unable to find it's
detailed description....
any ideas???
Why exclude the use of message queues? They are frequently used with
good success.
A recursive approach provides the effects of a message queue using
process stack space. One problem with this approach is that many
OSs provide relatively limited stack space for a single process.
Events using either recursion or message queues are often implemented
as substitutes for full threading. Rather than re-inventing threading,
or a subset of threading, why not simply use threading to handle events?
The abstract model of an event handling system includes the idea that
events are asynchronous with regard to the responders, and that each
responder should be allowed to proceed independently of all other
responders. Such behavior has been implemented as a set of method
calls in a single thread, but at a cost of significant complexity.
This is one model that fits a multi-threaded design much better than a
single threaded design.
Jim Rogers