多线程必须用到的线程池(什么时候用多线程)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程必须用到的线程池(什么时候用多线程)相关的知识,希望对你有一定的参考价值。

案例需求:要开发的项目是一个IT问答平台,其中用户发布问题后,需要给平台上所有选了该问题类别的邮箱中各发一份邮件。

  技术分享

分析:这个时候就必须用到多线程了,因为用户发布问题和给其他用户发邮件可以说是两个相互独立的步骤,如果让主程序一行一行执行的话,那如果发邮件的人很多的话,用户发一个问题要等很长时间页面才会响应,这个肯定是不能容忍的。但是用普通new一个线程,然后.start的话会出现大问题,很有可能服务器会崩掉,线程不能复用。

  技术分享

ExecutorService pool = Executors.newCachedThreadPool();
SendTwoEmailTools st=new SendTwoEmailTools();//你的线程类
Thread thread = new Thread(st);
//将线程放入池中进行执行
pool.execute(thread);
//关闭线程池
pool.shutdown();

  

这样就比较好的解决问题了。
如有疑问,可以联系本人qq:1913284695 或者直接在我的问答平台上进行提问哦,地址:http://jf3q.com

  

以上是关于多线程必须用到的线程池(什么时候用多线程)的主要内容,如果未能解决你的问题,请参考以下文章

到底什么时候该用多线程

多线程:到底什么时候该用多线程

多线程:到底什么时候该用多线程

啥时候会使用线程池

自定义线程池+countdownlatch

自定义线程池+countdownlatch