On Wed, 2010-01-06 at 13:59 -0500, Scott Lawrence wrote:
> I think it's a bad idea because it makes the lock scope ambiguous.  If
> I've got a block with an OsLock at the top, I don't want it to be
> possible that anywhere in that block is not holding the lock (the
> reverse bug from the one that bit you).

More exactly, the problem is that whether and where the lock is held is
not determined by the static structure of the code.  That is what OsLock
was designed to allow, and OsLock::release() violates that.  Within that
context, I can replace ::release with OsUnLock with only a slight loss
of efficiency, and have the lock structure be statically determined.
With that structure, gotchas are still possible, but much less so than
with manual locking.

Dale


_______________________________________________
sipx-dev mailing list [email protected]
List Archive: http://list.sipfoundry.org/archive/sipx-dev
Unsubscribe: http://list.sipfoundry.org/mailman/listinfo/sipx-dev
sipXecs IP PBX -- http://www.sipfoundry.org/

Reply via email to