为什么说线程创建的方式只有一种


线程创建的方式说是有四种, 但是实际上只有一种创建方式. 为什么?

因为不管是 Callable 还是线程池创建线程, 看它们的实现方式或者说底层源码,其本质上都是通过创建 Thread 对象来实现真正的创建线程. 而实现 Runable 接口, 给我的感觉就是把重写 Thread 的 run 方法提出来成为一个可重复利用的任务, 这样创建相同任务的线程就比较方便.

  • 至于线程池为什么用到 Thread, 可以查看线程创建工厂 threadFactory 底层的接口, 就是一系列的判断和 new Thread.
  • Callable 就是类似, 不过把任务换成了 FutureTask 作为任务对象, 从而能够拿到线程执行的结果.

文章作者: KTpro
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 KTpro !
评论
  目录