《Java并发编程实战》2.结构化并发应用程序

六、任务执行

 
      Executor框架
        1)线程池
  • newSingleThreadExecutor 一个线程
  • newFixedThreadPool 固定大小线程池
  • newCachedThreadPool 缓冲线程池
  • newScheduledThreadPool 延迟或定时线程池
        2)Executor生命周期
        ExecutorService继承了Executor,扩展了其生命周期的管理方法。其生命周期状态:运行、关闭、已终止
        3)Callable与Future
        实现了线程池可返回执行结果,并可取消中断。
 

七、取消与关闭

    任务取消:用户取消、时间限制、程序取消、错误、关闭。
    interrupt是请求中断,传递一个中断信息,并不是中断线程。还需要响应中断才可以。
    中断是实现任务取消的最合理方式,不可中断的任务在退出前可恢复中断。
 

八、线程池的使用

 
        构造函数:
         public ThreadPoolExecutor( int corePoolSize,
                          int maximumPoolSize,
                          long keepAliveTime,
                          TimeUnit unit,
                          BlockingQueue<Runnable> workQueue,
                          ThreadFactory threadFactory,
                          RejectedExecutionHandler handler);
  • corePoolSize:核心线程数,①中用到
  • maximumPoolSize:最大线程数,③中用到
  • keepAliveTime &  unit:存活时间,在⑥中创建的为非核心线程,在 阻塞队列 workQueue上 take时,设置该时间,等中断后回收该线程。
  • workQueue:工作队列,②中用到
  • threadFactory:线程工厂,⑤⑥用到
  • handler:拒绝处理策略,④中用到
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值