首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >最有效的Java线程技术?

最有效的Java线程技术?
EN

Stack Overflow用户
提问于 2012-04-07 11:00:28
回答 2查看 795关注 0票数 2

似乎有许多不同的方法可以创建线程(Runnable vs Thread类)和ThreadPools。

在Java中创建和池化线程的效率和最有效(性能方面)的技术有什么区别吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-07 11:46:48

归根结底,它们都依赖于相同的底层Thread-based机制来实际完成工作。这意味着如果你在问“启动单线程最有效的方法是什么?”答案是,创建一个Thread对象并对其调用start(),因为在最终创建Thread对象并对其调用start()之前,任何其他方法都需要执行一些其他步骤。

这并不意味着这是产生线程的最好方法,它只是意味着它是从Java代码生成线程的最底层的方法。创建线程的其他方法为您提供了管理底层Thread的不同类型的基础设施,因此您选择的方法应该取决于所需的基础设施的数量和种类。

票数 0
EN

Stack Overflow用户

发布于 2012-04-07 11:27:16

如果需要处理许多短而频繁的请求,最好使用ThreadPool,这样就可以重用已经打开的线程,并为它们分配Runnable任务。

但是,当您需要为单个任务操作启动一个线程,或者实例化一个在所有应用程序时间内或在很长一段特定时间内运行的守护程序线程时,最好创建一个线程,并在不再需要它时终止它。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10051380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档