单例模式——多线程的线程池设计Java代码

以下是一个简单的Java代码示例,演示了如何使用单例模式来设计一个多线程的线程池:

import java.util.concurrent.ExecutorService;

import java.util.concurrent.Executors;

public class ThreadPoolSingleton {

private static ThreadPoolSingleton instance; private ExecutorService executorService; private ThreadPoolSingleton() { executorService = Executors.newFixedThreadPool(10);

}

public static synchronized ThreadPoolSingleton getInstance() {

if (instance == null) {

instance = new ThreadPoolSingleton();

}

return instance;

}

public synchronized ExecutorService getExecutorService() {

return executorService;

}}

在这个示例中,使用了单例模式来保证在整个应用程序中只有一个ThreadPoolSingleton实例。

使用getInstance()方法来获取这个实例。

在getInstance()方法中,如果instance为空,则创建一个新的ThreadPoolSingleton实例。在getExecutorService()方法中,我们返回executorService实例,供调用方使用。由于线程池是共享资源,因此我们在getInstance()方法和getExecutorService()方法中使用了synchronized关键字,以确保线程安全。

相关推荐
SimonKing1 小时前
Archery:开源、一站式的数据库 SQL 审核与运维平台
java·后端·程序员
AI小智2 小时前
为了帮我搞定旅行清单:我的小白老婆报名了30万奖金的黑客松!
后端
双向332 小时前
RTX 4090助力深度学习:从PyTorch到生产环境的完整实践指南
后端
shengjk12 小时前
Java vs Python Web 服务器深度对比:从传统到现代的演进之路
后端
绝无仅有2 小时前
某辅导教育大厂真实面试过程与经验总结
后端·面试·架构
绝无仅有2 小时前
Java后端技术面试:银行业技术架构相关问题解答
后端·面试·github
这里有鱼汤2 小时前
【花姐小课堂】新手也能秒懂!用「风险平价」打造扛造的投资组合
后端·python
CodeSheep2 小时前
当了leader才发现,大厂最想裁掉的,不是上班总迟到的,也不是下班搞失联的,而是经常把这3句话挂在嘴边的
前端·后端·程序员
shark_chili2 小时前
Git Worktree:优雅解决多分支开发痛点的终极利器
后端
程序员爱钓鱼3 小时前
Go语言实战案例-项目实战篇:新闻聚合工具
后端·google·go