📘 Premium Read: Access my best content on Medium member-only articles — deep dives into Java, Spring Boot, Microservices, backend architecture, interview preparation, career advice, and industry-standard best practices.
🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.
▶️ Subscribe to My YouTube Channel (176K+ subscribers): Java Guides on YouTube
▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube
In this guide, you will learn about the Thread start() method in Java programming and how to use it with an example.
1. Thread start() Method Overview
Definition:
The Thread.start() method is used to start the execution of a new thread. The Java Virtual Machine calls the run() method of this thread.
Syntax:
public void start()
Parameters:
None.
Key Points:
- This method initiates a call to the run() method of the Thread class.
- Once the start() method is called, the Java runtime takes over and the JVM decides when the thread will actually run.
- Invoking the start() method on a thread that's already started will lead to an IllegalThreadStateException.
- It's essential to differentiate between start() and run(). Directly calling run() will execute the method in the current thread rather than starting a new thread.
2. Thread start() Method Example
public class ThreadStartExample {
public static void main(String[] args) {
// Create a new thread
Thread newThread = new Thread(() -> {
for(int i = 0; i < 5; i++) {
System.out.println("Inside new thread");
}
});
// Start the new thread
newThread.start();
for(int i = 0; i < 5; i++) {
System.out.println("Inside main thread");
}
}
}
Output:
Inside main thread Inside new thread Inside main thread Inside new thread Inside main thread Inside new thread Inside main thread Inside new thread Inside new thread
Explanation:
In the example, we create a new thread and use the Thread.start() method to start its execution. The new thread prints "Inside new thread" 5 times, and the main thread prints "Inside main thread" 5 times. The exact order of the outputs might vary because the execution order of threads is not guaranteed. Therefore, different runs may produce slightly different interleaved outputs.
Comments
Post a Comment
Leave Comment