durusmail: quixote-users: Making Quixote work in a threaded Web server.
Making Quixote work in a threaded Web server.
2002-10-04
2002-10-04
2002-10-04
2002-10-04
2002-10-06
2002-10-07
2002-10-16
2002-10-16
2002-10-16
2002-10-16
2002-10-17
2002-10-17
2002-10-17
2002-10-16
2002-10-16
Making Quixote work in a threaded Web server.
Titus Brown
2002-10-17
-> All right, here's doc/multi-threaded.txt.  Titus, please review it
-> carefully!  I did things slightly differently from your code.

This looks great!  Questions:

* I think you want __init__ to call Publisher.__init__:

        def __init__(self, package):
                Publisher.__init__(self, package)
                self._request_dict = {}

* do you want to include a section on what implications this has for
        things like database handles and programming in general, or just
        trust that thread-aware people will act accordingly?

For example, psycopg (a DB-API implementation for postgresql) is threadsafe,
but if you share a handle between multiple connections, then you need to
serialize the sharing, or else the commit/rollback calls made in one thread
will step on others.  Likewise, getting a new handle for each thread is
great but can lead to DoS attacks unless you put a limit on it.

cheers,
--titus

reply