作为一名八股专业户,在以前我一直觉得Java创建线程有三种方式那就是
①继承Thread
类;
②实现Runnable
接口;
③实现Callable
接口。
今天刷了一篇文章才知道了线程和线程体之间的区别.
例子
比如说实现Runnable接口
但是在启动线程得时候 如果我们直接 .run() 那么你输出一下线程名字会发现是main
我们启动的时候必须通过 new Thread(对象).start(); 也只有这种方法才是真正意义上的创建了一条线程
除了上面三种包括线程池创建线程的时候 最终也是使用Thread.start()去创建线程的
至于上面说到的线程和线程体 ChartGpt的回答 很清晰
线程是操作系统调度的最小执行单位,而线程体是线程实际要执行的代码逻辑。线程体是线程的属性,线程根据线程体中定义的代码逻辑来执行任务。