首页 > 编程知识 正文

java种线程池(java学期末总结)

时间:2023-05-06 20:51:12 阅读:1488 作者:1137

为什么要使用线程池?

缺乏对线程的统一管理,系统资源过多,缺少更多的功能,比如定期执行、定期执行等。使用线程池的好处:

重用现有线程,降低对象的创建和死亡成本,有效控制最大并发数,提高系统资源利用率。定期执行线程池所在的包:java.util.concurrent

顶层接口是Executor,真正的线程池接口是Executor service[它们是继承的]

抽象执行服务实现类实现了前面的方法。

java.util.concurrent.Executors类提供了一种创建线程池的静态方法。

ScheduledExecutorService中的方法:

调度固定日期(可运行命令,长初始时间,长周期,时间单位单位)

命令:要执行的任务

InitialDelay:延迟第一次执行时间。

期间:连续执行之间的期间。

单位:初始延迟和周期参数的时间单位。

scheduleWithFixedDelay(可运行命令,长初始延迟,长延迟,时间单位单位)

命令:要执行的任务

InitialDelay:延迟第一次执行时间。

延迟:一次执行结束到下一次执行开始之间的延迟。

单位:初始延迟和延迟参数的时间单位。

线程池执行器类:

构造函数中每个参数的含义:

CorePoolSize:核心池的大小(线程池中核心线程的数量)maximumPoolSize:线程池中线程的最大数量(不能超过)keepAliveTime:表示没有任务执行时线程可以停留的时间。单位:参数keepAliveTime工作队列的时间单位:阻塞队列,用于存储要执行的任务。threadFactory: Thread factory,主要用于创建线程处理程序:表示拒绝处理任务时的策略(销毁数据)

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。