java多线程实现以及状态
时间: 2023-12-26 16:27:04 浏览: 91
Java多线程实现方式主要有四种:继承Thread类、实现Runnable接口、实现Callable接口通过FutureTask包装器来创建Thread线程、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,后两种是带返回值的。
1. 继承Thread类重写run方法创建线程:
```java
public class MyThread extends Thread{
@Override
public void run() {
System.out.println("Thread");
}
}
```
2. 实现Runnable接口创建线程:
```java
public class MyRunnable implements Runnable{
@Override
public void run() {
System.out.println("Runnable");
}
}
```
线程状态包括以下几种:
1. NEW:新建状态,线程被创建但还没有被启动。
2. RUNNABLE:运行状态,线程正在执行或者等待CPU时间片。
3. BLOCKED:阻塞状态,线程被阻塞并等待获取一个排它锁。
4. WAITING:等待状态,线程等待其他线程执行完毕。
5. TIMED_WAITING:超时等待状态,线程等待其他线程执行完毕,但是有超时时间限制。
6. TERMINATED:终止状态,线程执行完毕或者被强制终止。
阅读全文