This week's book giveaways are in the Scala and Android forums.
We're giving away four copies each of Machine Learning Systems: Designs that scale and Xamarin in Action: Creating native cross-platform mobile apps and have the authors on-line!
See this thread and this one for details.
Win a copy of Machine Learning Systems: Designs that scale this week in the Scala forum
or Xamarin in Action: Creating native cross-platform mobile apps in the Android forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic

Who is getting locked?  RSS feed

 
Ranch Hand
Posts: 146
Eclipse IDE Java Linux
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi all.

I have a conceptual doubt about threads. If I have an object that has the method that follows:



I'd like to confirm that the object whose method is synchronized is the object that has been locked.
So the instance variables such as acct who is a reference to an object isn't locked.

Am I right?

Thanks
 
Bartender
Posts: 6109
6
Android IntelliJ IDE Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
We don't really refer to anything as "being locked." Rather, we say that we obtain a lock. But if by "locking X" you mean "obtaining X's lock", then, yes, you're correct. The object whose lock we obtain is the one whose synchronized method we are executing.



The above methods are equivalent. Both obtain the lock for the "this" object and hold it for the entire body of the method.
 
If you try to please everybody, your progress is limited by the noisiest fool. And this tiny ad:
Rocket Oven Kickstarter - from the trailboss
https://coderanch.com/t/695773/Rocket-Oven-Kickstarter-trailboss
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!