Skip to content

Latest commit

 

History

History
10 lines (7 loc) · 770 Bytes

thread-base-001.md

File metadata and controls

10 lines (7 loc) · 770 Bytes

多线程实现runnable 和 继承Thread 区别

 ① 从代码架构角度: 具体实现应该和创建任务分离开来 进而实现代码解耦
                  
 ② 继承Thread类每次创建都要新建一个任务这无形之中会带来很大得消耗
  大量的线程创建、执行和销毁是非常耗cpu和内存的,这样将直接影响系统的吞吐量,导致性能急剧下降,如果内存资源占用的比较多,还很可能造成OOM
  runnable在后续可以被线程池等管理节约资源
 ③ java只能单继承,因此如果是采用继承Thread的方法,那么在以后进行代码重构的时候可能会遇到问题,因为你无法继承别的类了
 扩展就成了问题闹不闹心