>> The hard part is knowing when and how to lock shared resources...

    Bill> Well, I might say the "careful part".

With the Mojam middleware stuff I suffered quite awhile with a
single-threaded implementation that would hang the entire webserver if a
backend query took too long.  I realized I needed to do something (threads,
asyncore, whatever), but didn't think I understood the issues well enough to
do it right.  Once I finally bit the bullet and switched to a multithreaded
implementation, I didn't have too much trouble.  Of course, the application
was pretty mature at that point and I understood what objects were shared
and needed to be locked.  Oh, and I took Aahz's admonition to heart and
pretty much stuck to using Queues for all synchronization.  It ain't rocket
science, but it can be subtle.

Skip
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to