问题描述
最近在研究多线程方面的技术,现在有这么一个问题,有多次请求,每次请求都需要新开一个线程来处理一些特殊的任务,但是如果不对线程数做一些控制的话会导致线程过多效率下降,而我能想到的解决方法是通过线程池的方式来限定线程的数目,超出线程数目的任务在线程池队列中等待或者检查当前线程池是否已满,满了的话就通知用户等待下次请求。现在的问题是我在程序中通过Executors.newCachedThreadPool的方式建立连接池,但是由于是多个请求的方法我不知道这样会不会造成最终建立了多个线程池,也就是说如何在多请求的情况下使用一个线程池来管理线程,这个应该跟servlet的实现有些类似,但我找不到servlet的实现远离代码,还有就是如何获取到这个线程池是否满了的情况从未回馈给用户
解决方案
解决方案二:
汗自己顶一下有没有好心人能给点建议的
解决方案三:
难道每次请求来了你都new一个线程池?怎么会有多个,你先new一个放那用不就得了,请求来了取线程处理。
时间: 2024-10-30 10:26:10