A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 徐芾清 中级黑马   /  2014-3-7 13:54  /  1008 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

newScheduledThreadPool(int corePoolSize)  里面的corePoolSize是什么意思,如果我写newScheduledThreadPool(5) 是不是建立5个线程?

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

3 个回复

倒序浏览
ScheduledThreadPool是一个固定大小的线程池,与FixedThreadPool类似,执行的任务是定时执行。如果当前需要执行的任务超过池大小,那么多出的任务处于等待状态,直到有空闲下来的线程执行任务,  如果当前需要执行的任务小于池大小,空闲的线程也不会去销毁。

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 混蛋哥 于 2014-3-7 14:40 编辑

给你参考下API的解释newScheduledThreadPool
public static ScheduledExecutorService newScheduledThreadPool(int corePoolSize)
创建一个线程池,它可安排在给定延迟后运行命令或者定期地执行。
参数:corePoolSize - 池中所保存的线程数,即使线程是空闲的也包括在内。

返回:新创建的安排线程池
抛出:NullPointerException - 如果 threadFactory 为 null


评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

回复 使用道具 举报
线程池能按时间计划来执行任务,允许用户设定计划执行任务的时间。参数corePoolSize设定线程池中线程的最小数目。当任务较多时,线程池可能会创建更多的工作线程来执行任务
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马