newFixedthreadpoll在实现应用中出现的小插曲

做了一个多线程下载的小工具,程序中应用了线程池newFixedthreadpoll ,设计程序时把ExecutorService fixedThreadPool = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() * 2 ) ;这句写在方法中,结果每次调用这个方法都实例了一个线程池。程序运行时系统很卡,用jconsole看了一下线程,有3000个,排查了很久,才发现这个问题,正确的做法是把线程池的实例放在单例模式的构造方法中(当然还有其它方法),让线程池只实例一次

你可能感兴趣的:(newFixedthreadpoll在实现应用中出现的小插曲)