增加线程三种实现方式的比较

This commit is contained in:
wangxujian-laixuzhui 2018-08-16 08:49:34 +08:00 committed by GitHub
parent 3da8d737e6
commit 56a271b433
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -182,7 +182,10 @@ public static void main(String[] args) {
mt.start();
}
```
## 三种实现方式的比较
- 实现Runnable接又可以避免Java单继承特性而带来的局限;增强程序的健壮性,代码能够被多个线程共享,代码与数据是独立的;适合多个相同程序代码的线程区处理同一资源的情况。
- 继承Thread类和实现Runnable方法启动线 程都是使用start方法然后JVM虚拟机将此线程放到就绪队列中如果有处理机可用 则执行run方法。
- 实现Callable接又要实现call方法并且线 程执行完毕后会有返回值。其他的两种都是 重写run方法没有返回值。
## 实现接口 VS 继承 Thread
实现接口会更好一些,因为: