Monday, November 25, 2013

Java 5 introduce the lock method. Any pros and cons using lock compared to synchronized keyword?
share|improve this question
add comment

2 Answers

'synchronize' will lock any resources accessed within the method. 'lock' allows you more granularity, and control (e.g. only locking some resources, or locking only if a certain condition is met, for example).
There's a pretty good code sample near the top of this link:http://download.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/locks/Lock.html
share|improve this answer
add comment
The java.util.concurrent locks give you more control on what and when to lock. You can still use the synchronized keyword if it fits your needs (e.g. if you need per-instance / per-class synchronization)
share|improve this answer

No comments: