[Python-Dev] threadsafe patch for asynchat (original) (raw)

Steve Holden steve at holdenweb.com
Wed Feb 8 08:33:28 CET 2006


Martin v. Löwis wrote:

Tim Peters wrote:

Bugs and "missing features" in asyncore. For ZEO's purposes, if I had designed it, I expect it would have used threads (without asyncore). However, bits of code still sitting around suggest that it was at least the intent at one time that ZEO be able to run without threads at all. That's certainly not possible now. What is the reason that people want to use threads when they can have poll/select-style message processing? Why does Zope require threads? IOW, why would anybody want a "threadsafe patch for asynchat"? In case the processing of events needed to block? If I'm processing web requests in an async* dispatch loop and a request needs the results of a (probably lengthy) database query in order to generate its output, how do I give the dispatcher control again to process the next asynchronous network event?

The usual answer is "process the request in a thread". That way the dispatcher can spring to life for each event as quickly as needed.

regards Steve

Steve Holden +44 150 684 7255 +1 800 494 3119 Holden Web LLC www.holdenweb.com PyCon TX 2006 www.python.org/pycon/



More information about the Python-Dev mailing list