您好,欢迎来到赋能网!

Java学习小知识之线程池

赋能网 2023-05-10 61

1、线程池原理

       创建一个线程,需要一个Thread对象和一个Runable接口实例。每次都去new一个Thread对象是很耗费时间的,而且不好管

理。线程池就是为了复用已存在的Thread对象,防止不停地创建Thread对象带来的性能损耗。

2、线程池流程
       流程总的说明

       线程池中会有一个HashSet,里面存放着Worker对象。这个Worker中会存有一个Thread对象,会使用这个thread执行任务。

个Worker对象的多少代表着线程池的线程容量,每个Worker会从BlockingQueue中获取你的Runnable实例任务,进行执行,

没有的话,会阻塞在那里,直到获取到队列中的任务。

      新建线程任务流程
      1、如果HashSet中的线程数量没有达到核心线程数量,那么就会新创建一个Worker对象,直接执行你的任务。

      2、如果HashSet中的线程数量已经达到核心的线程大小并且任务队列没有满,不再创建这个Worker对象,会将你的任务放

到队列中。

      3、如果HashSet中的线程数量已经达到核心的线程大小并且任务队列满了,那么就会创建Worker对象,直到达到最大线程

数量为止。

      4、如果HashSet中的线程数量已经达到最大线程大小,新来的任务就会被拒掉。

  想了解更多相关资讯请关注java培训频道-查看更多,了解相关专业课程信息您可在线咨询也可免费申请试课。关注赋能网了解更多:4008-569-579

本文链接:

本文章“Java学习小知识之线程池”已帮助 61 人

免责声明:本信息由用户发布,本站不承担本信息引起的任何交易及知识产权侵权的法律责任!

本文由赋能网 整理发布。了解更多培训机构》培训课程》学习资讯》课程优惠》课程开班》学校地址等机构信息,可以留下您的联系方式,让课程老师跟你详细解答:
咨询热线:4008-569-579

如果本页不是您要找的课程,您也可以百度查找一下: