Java多线程的常用创建方式总结
Java多线程的创建方式
Java现在有四种创建的方式:继承Threa类、实现Runnable接口、实现Callable接口、线程池
Thread、Runnable都在java.lang包下;Callable、线程池都在java.util.concurrent包下
1.继承Thread类,重写run方法
创建一个类继承Thread类,并重写run();因为run()是线程具体执行的方法

在测试类或者main()创建Thread对象,并调用start()启动线程

备注:start()是启动线程,run()是线程执行的业务方法
2.实现Runnable接口,通过参数方式创建线程
创建一个类实现Runnable接口并重写run

在测试类或者main()创建Thread对象,并传入该接口实现类对象,并调用start()启动线程

3.实现Callable接口,通过FutureTask来创建线程
创建一个类实现Callable接口,重写call()call()支持有返回值和抛异常Callable支持泛型

传入Callable对象,创建FutureFask类

备注:FutureTask实现了Runnable接口;FutureTask.get()可以获取call()返回值
创建Thread对象,并调用start方法启动线程

4.通过线程池方式创建线程
创建一个类实现Runnable或者Callable接口,并重写对应方法

创建一个线程池对象,并执行execute方法启动线程

备注:可以通过线程池方式管理线程个数等配置信息

几种创建方式想必大家都已了解,但在实际开发中大多数都是以线程池来操作线程的;
线程池优势:提升响应速度,提高资源重用率,便于管理
线程的生命周期

到此这篇关于Java多线程的常用创建方式总结的文章就介绍到这了,更多相关Java多线程的创建方式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Spring学习笔记3之消息队列(rabbitmq)发送邮件功能
这篇文章主要介绍了Spring学习笔记3之消息队列(rabbitmq)发送邮件功能的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下2016-07-07
idea两侧的maven-project-structure图标不见了如何解决
这篇文章主要介绍了如何解决idea两侧的maven-project-structure图标不见了问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-07-07
解决idea 拉取代码出现的 “ Сannot Run Git Cannot identify version of
这篇文章主要介绍了解决idea 拉取代码出现的 “ Сannot Run Git Cannot identify version of git executable: no response“的问题,需要的朋友可以参考下2020-08-08


最新评论