Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Synchronized Thread Run Method

 
Mark Reyes
Ranch Hand
Posts: 426
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello All,

Good Day...

I have a question to ask regarding the following class that I am reading.



From what I have understand the run method of the Thread class was overriden? I hope I'm right?

But I want to ask about the synchronized method in the run method. I'm a bit confused about making the run method synchronize. From my own understanding, making a method synchronize for an object means that other thread that invoke the same object synchronize method is suspended from executing.

I am not sure but does making the run method synchronized means that when the thread scheduler made this thread in running position, all code in the run method is executed and uninterrupted? As I have learned in the Head First Java Book, the execution of the thread depends on the Thread Scheduler.

Please help me clear my doubts.. Thanks to those who will reply.
 
Ulf Dittmer
Rancher
Posts: 42967
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
From what I have understand the run method of the Thread class was overriden?

Yes.

From my own understanding, making a method synchronize for an object means that other thread that invoke the same object synchronize method is suspended from executing.

Correct.

does making the run method synchronized means that when the thread scheduler made this thread in running position, all code in the run method is executed and uninterrupted? As I have learned in the Head First Java Book, the execution of the thread depends on the Thread Scheduler.

No, it can be interrupted. The JVM is free to schedule threads for execution, so any given thread may be interrupted to run other threads (or parts of other threads) first. It would then later be resumed until it runs to completion. But there's nothing the programmer needs to do to accommodate this - the JVM takes care of it.
 
Mark Reyes
Ranch Hand
Posts: 426
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello Ulf,

Thanks for the detailed reply...
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic