Java 线程生命周期详解:实例代码逐行解析
这段代码演示了 Java 中线程的生命周期,并通过一个简单的示例代码逐行解析了创建、就绪、运行和终止的过程。
public class MyThread implements Runnable {
public void run() {
System.out.println('Thread is running.');
}
public static void main(String[] args) {
MyThread myThread = new MyThread();
Thread thread = new Thread(myThread);
thread.start();
}
}
代码解析:
-
public class MyThread implements Runnable {:定义了一个名为MyThread的类,该类实现了Runnable接口,表示一个自定义的线程。 -
public void run() {:定义了线程的执行体run()方法,该方法中编写了线程要执行的代码。 -
System.out.println('Thread is running.');:在run()方法中,打印一条消息,表示线程正在运行。 -
public static void main(String[] args) {:程序的入口点,main方法是主线程的入口。 -
MyThread myThread = new MyThread();:实例化一个MyThread对象,创建新的线程对象。 -
Thread thread = new Thread(myThread);:创建一个新的线程对象thread,并将MyThread对象作为参数传递给Thread构造函数。 -
thread.start();:启动线程,使线程开始执行。start()方法会在后台创建一个新的线程,并自动调用线程的run()方法。
线程的生命周期:
线程的生命周期包括以下四个阶段:
- 创建: 通过
new Thread()创建一个新的线程对象。 - 就绪: 线程创建后,进入就绪状态,等待 CPU 的调度。
- 运行: 当 CPU 分配给该线程时,线程进入运行状态,执行
run()方法中的代码。 - 终止: 线程执行完毕或遇到异常时,进入终止状态。
代码中的生命周期:
- 创建: 代码第 5 行
MyThread myThread = new MyThread();创建了一个新的MyThread对象。 - 就绪: 代码第 6 行
Thread thread = new Thread(myThread);创建了一个新的Thread对象,并将MyThread对象作为参数传递给构造函数,此时线程进入了就绪状态。 - 运行: 代码第 7 行
thread.start();启动线程,使线程进入运行状态,并执行run()方法中的代码,打印消息 'Thread is running.'。 - 终止: 线程执行完
run()方法中的代码后,自动进入终止状态。
通过以上代码示例和解析,您可以更加清晰地理解 Java 线程的生命周期。
原文地址: https://www.cveoy.top/t/topic/SNO 著作权归作者所有。请勿转载和采集!