ATTENTION: Crosspost -- Reply-To set to '[EMAIL PROTECTED]' On Friday, I reported a bug that can cause non-deterministic message loss and duplication of messages in forking applications with an "asyncore" mainloop thread.
Unfortunately, the proposed workararound does not work for various reasons (as you may already have recognized and reported): * it modifies global variables without protection which is a receipe for desaster in a multi-threaded environment * it resets state that is already activated. Therefore, it is not effective in preventing the main problem. * when applied for "system", it blocks Zope until the the call returns which may be far too long. I am working at another work around. The main ideas is: * Inform "asyncore" about the actor for which its mainloop should execute. * When the actor is set, "asyncore" calls handlers only for this actor and does nothing otherwise. The problem: what is an "actor"? The most natural choice would be the process, identified via its process id. However, under Linux, the process id may not identify the process but the thread. I am still looking for an adequate, platform independent "actor" definition. -- Dieter _______________________________________________ Zope-Dev maillist - [EMAIL PROTECTED] http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )