GeeCON Prague 2014*
The moose likes Threads and Synchronization and the fly likes Diffrence  between calling the run() method. Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


JavaRanch » Java Forums » Java » Threads and Synchronization
Bookmark "Diffrence  between calling the run() method." Watch "Diffrence  between calling the run() method." New topic
Author

Diffrence between calling the run() method.

Praveen Kumar
Ranch Hand

Joined: Nov 06, 2006
Posts: 133
Hi

If you extend any thread class , we should override the run method.

We can call that run method by using obj.start() or obj.run().

Just i want to know difference between them .

Is that start() method will create new Thread () ?
Joanne Neal
Rancher

Joined: Aug 05, 2005
Posts: 3600
    
  15
Yes. If you call the run method directly then it will be executed by the current thread. By calling start, a new thread is created and run is executed by that thread.


Joanne
Peter Chase
Ranch Hand

Joined: Oct 30, 2001
Posts: 1970
Actually, calling start does not create a new Thread, but it does create a new thread.

Remember that Java is case-sensitive.


Betty Rubble? Well, I would go with Betty... but I'd be thinking of Wilma.
Rob Spoor
Sheriff

Joined: Oct 27, 2005
Posts: 19697
    
  20

As said before, the difference is that start() will execute the run() method on a new thread, and run() will execute on the current thread.

This is a real stinker in examination; run() is called but the question lets you think that start() is called instead.


SCJP 1.4 - SCJP 6 - SCWCD 5 - OCEEJBD 6
How To Ask Questions How To Answer Questions
 
GeeCON Prague 2014
 
subject: Diffrence between calling the run() method.