This week's book giveaway is in the Other Languages forum.
We're giving away four copies of Functional Reactive Programming and have Stephen Blackheath and Anthony Jones on-line!
See this thread for details.
Win a copy of Functional Reactive Programming this week in the Other Languages forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

hand over hand locking

 
Mike Hays
Greenhorn
Posts: 14
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello,

I've read that masterLock.lock() in the following code should come before the try block because it might throw an exception. If it is placed inside the try block and an exception is thrown, the finally block will attempt to unlock a lock that isn't locked.

Can masterLock.unlock() also throw an exception? If it does then recordLock might not get unlocked. Is the following code not a correct way to implement hand over hand locking?

 
Mike Hays
Greenhorn
Posts: 14
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi all,

I'm also trying to understand how to acquire 2 locks in a row. For example,





Are either of the above approaches correct? As noted in the comments they both seem to have problems.

How about



But I've read that nested try blocks are undesirable. Anyone know how to do this correctly?
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic