Hi again,
I think I was wrong with the term "race condition". After some
investigation I found out what causes the problem. I created a simple
demo application that I can upload I you want me to.
Basically, the problem occurs, when there are multiple subscribers for
the same topic and one of them changes the subscriptions (e.g. by
unsubscribing) for the topic while the publisher function runs. That
will lead to the listener cache being cleared and publisher.listeners
being undefined upon the next iteration of the for loop.
I think this could be fixed by iterating over a clone of
publisher.listeners instead of publisher.listeners itself. Of course
that would mean that if one listener unsubscribes other listeners while
running, those would be notified for the current run anyway.
Any thoughts on that?
Jochen
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org