• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Thread

 
Anonymous
Ranch Hand
Posts: 18944
  • 0
  • send pies
  • Quote
  • Report post to moderator
Which of the following statements about threading are true
1) You can only obtain a mutually exclusive lock on methods in a class that extends Thread or implements runnable
2) You can obtain a mutually exclusive lock on any object//true
3) A thread can obtain a mutually exclusive lock on a method declared with the keyword synchronized//true
4) Thread scheduling algorithms are platform dependent//true
Can any one help me to understand why 2) also true ?
Thanx in advance.
 
Jim Yingst
Wanderer
Sheriff
Posts: 18671
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The reason 2 is true is because you can use the synchronized keyword to acquire a lock on any object you want:
<code><pre> synchronized (object) {
// JVM cannot enter this block
// until it acquires lock on "object"
}
// now lock has been given up again</pre></code>
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic