This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author kristjan.jonsson
Recipients Sebastian.Noack, asvetlov, jyasskin, kristjan.jonsson, mklauber, pitrou, sbt
Date 2012-10-01.10:06:28
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1349085988.62.0.0665384944069.issue8800@psf.upfronthosting.co.za>
In-reply-to
Content
Perhaps I should have pointed out, for Sebastian's benefit, that my second patch uses "timeout" rather than "blocking" since that is the new black in python 3.
Also, I think the "threading" implementation shows clearly the problem of having two independent objects that are only losely bound by some shared common variables:  The threading.py version has to rely on c_types ints for the common counters.
If the two locks were merely two different views of a common RWLock object, this problem could go away, and you could have the threading.RWLock and the multiprocessing.RWLock be different concrete classes derived from a common base class.

I also think it is time to drop the "writer preference" model, since it just adds complexity with doubtful benefits.  Sebastian's model also does that.

I'll provide a new example patch presently.
History
Date User Action Args
2012-10-01 10:06:28kristjan.jonssonsetrecipients: + kristjan.jonsson, pitrou, jyasskin, asvetlov, sbt, mklauber, Sebastian.Noack
2012-10-01 10:06:28kristjan.jonssonsetmessageid: <1349085988.62.0.0665384944069.issue8800@psf.upfronthosting.co.za>
2012-10-01 10:06:28kristjan.jonssonlinkissue8800 messages
2012-10-01 10:06:28kristjan.jonssoncreate