1.名词:

  1.任务的执行与任务的提交解耦

  2.任务的执行策略-可中断,取消

2.线程封闭机制:

  针对单线程池而言,提高任务执行的速度,但是无需锁定

3.饥饿死锁:

  任务长期得不到执行,其实就是形成闭合的环路导致,共享资源互相锁定导致

4.超时机制:

  指定时间任务完不成,则重新加入的线程的执行队列中等待重新执行(超时就是重试机制)

5.线程池的大小:

  做好做成动态的,看CPU的线程数:Runntime.avalibleProcessors()

6.ExecutorService:

  线程管理器其实就是一个ThreadPools,里面有线程,任务队列所以我们可以定制ThreadPoolsExecutor(个数,最大个数,空闲时间,任务队列,线程工厂,拒绝处理器

  空闲时间:线程没有被执行的时间间隔,如果一直未被使用,则进行回收

  任务队列:用户提交的任务列表,其实就是缓存,等待线程执行---扩展点

  线程工厂:  线程池随着需求进行动态创建线程的过程中所使用的线程工厂  ----扩展点

  拒绝策略:针对用户提交任务的限制,因为队列是优先的---扩展点

  线程工厂:定制特殊的线程

  线程池:任务执行前后进行监控 beforeExecute  afterExecute

7.队列:

  有届队列:大小有限制,超过容量之后将会执行拒绝的执行器

  无界队列:

  同步移交:针对大队列,直接提交给执行线程

8.Caller-Run:一种饱和机制,任务执行在与Executor的所在线程,应用层进行排队执

9.控制线程池的任务提交的速率就是通过信号量机制进行限制

10.守护线程与非守护线程:(一些业务可以标识为守护线程,自动销毁)

11.

===========================================================

开发中的问题:

1.线程池大小动态设置

2.饱和策略

3.任务执行失败,重试策略

4.

最新文章

  1. PIL中的Image和numpy中的数组array相互转换
  2. Spring(1)
  3. Modern Operating Systems(Ⅰ)——2014.12.15
  4. linux——基本配置
  5. Android 中的缓存机制与实现
  6. Apache—DBUtils
  7. Moses创建一个翻译系统的基本过程记录,以后会按照每个过程详细说明,并给出每个步骤的参数说明
  8. 或许你不知道(2):LinkedList
  9. webservice wsdl 生成服务
  10. IOS实用功能之截图(来自相册和拍照)
  11. java学习面向对象之抽象类
  12. java读取图片的(尺寸、拍摄日期、标记)等EXIF信息
  13. arp欺骗
  14. Mybatis学习之JDBC缺陷
  15. Fibonacci 数列O(logn)解法
  16. 学起来 —— CSS 入门基础
  17. JDK--box和unbox
  18. GIT好文搜藏
  19. 类 __new__方法实现单例
  20. Window 下安装 Redis

热门文章

  1. 手动开启ARC
  2. 7.3 5种IO模型与IO复用
  3. Linux下你需要了解的10个网络和监控命令
  4. C#中IDisposable的用法
  5. Windows10 解决“装了 .NET Framework 4.5.2/4.6.1/4.7.1等等任何版本 或版本更高的更新”问题
  6. Passing the Message 单调栈两次
  7. 定时器setTimeout()的传参方法
  8. gtx860M,cuda9路1080p多高斯运动检测测试
  9. Makefile在内核编译中的使用
  10. stenciljs 学习十 服务器端渲染