-> 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