支持优先级内部晋升的无锁并发优先级线程池
在业务中存在着这样的一种场景,任务自身有着优先级区分。高优先级的任务要先于低优先级的任务执行。但是如果一直持续不断的有高优先级任务添加到队列,可能会导致低优先级任务无法分配执行资源而被饿死。因此除了优先级控制外,已经入队到优先级线程池中的低优先级任务需要有一种机制可以实现优先级的晋升。这样才能避免在线程池中的低优先级任务被饿死。本场Chat会从整个线程池的设计思路,并发过程,数据结构的推导开始分析,从0到1论证整个线程池的构成。在本场Chat中,会讲到如下内容:
- 什么样的数据结构可以高性能的完成优先级晋升这个任务。
- 内部任务的优先级晋升如保证不会被外部持续加入的高优先级任务饿死。
- 任务提取,任务放入,任务优先级变更,如何保证并发安全
阅读全文: http://gitbook.cn/gitchat/activity/5e186e65c5043527dc4ee2ae
您还可以下载 **** 旗下精品原创内容社区 GitChat App ,阅读更多 GitChat 专享技术内容哦。