Granny's Programming Pearls
"inside of every large program is a small program struggling to get out"
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

Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Java » Threads and Synchronization
Bookmark "Diffrence  between calling the run() method." Watch "Diffrence  between calling the run() method." New topic

Diffrence between calling the run() method.

Praveen Kumar
Ranch Hand

Joined: Nov 06, 2006
Posts: 133

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

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

Just i want to know difference between them .

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

Joined: Aug 05, 2005
Posts: 3415
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.

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

Joined: Oct 27, 2005
Posts: 19649

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.

How To Ask Questions How To Answer Questions
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
subject: Diffrence between calling the run() method.
Similar Threads
Difference between start() and run() method?
Difference Between Calling threads using run() and start()
run() method in thread
start() method of the Thread class