java - 何时为每个应用程序 java 创建多个执行程序服务

标签 java

什么时候为程序/应用程序的每次运行创建多个执行程序服务是个好主意?为什么要这样做,而不是一开始就启动 executors.newcachedthreadpool() 并将所有可调用项提交给它。

最佳答案

  • 您可能需要不同的风格(比如固定线程池或计划执行器)
  • 封装:如果一个特定的类需要通过一个执行器来运行,那么这个类负责决定它的执行策略是有意义的,这是一个实现细节
  • 特化 - 上一点的必然结果:
    • 有些任务需要很多线程(典型的是网络任务)
    • 而其他人只需要一些(CPU 密集型任务)
    • 有些应该只使用一个(例如,如果您在本地硬盘驱动器上读/写)
  • 当然在某些情况下,您希望将执行程序传递给对象,因为您希望调用代码控制某些任务的执行方式

最重要的是,我想不出为什么对于一个足够大的项目,您只想为整个程序使用一个线程池。

关于java - 何时为每个应用程序 java 创建多个执行程序服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12451420/

相关文章:

java - 类必须声明为抽象或实现抽象方法

swing - 使用 AspectJ 加载 javax.swing.* 类

java - 使用 Java 客户端检测 Prometheus 指标

java - 如何在 Java 企业应用程序中获取文件的文件路径?

java - 检测 SD 卡是否存在始终返回 true

java - AnyLogic 中的自定义流程库模块

java - 如何向 roo-shell 中的实体添加字段?

java - 当父类似乎没有更改任何属性时,两次声明方法的目的是什么(有吗?)?

java - GWT 和 CSS 开发最佳实践

java - 当我有 .html 和 .css 文件时如何检查文本的 Java 颜色?