图文并茂的生产者消费者应用实例demo
2024-08-27 07:26:46
前面的几篇文章<<.NET 中的阻塞队列BlockingCollection的正确打开方式>><<项目开发中应用如何并发处理的一二事>>从代码以及理论角度,充分的利用了微软提供的BlockingCollection的属性IsComplete以及CompleteAdding完成了并发的设计,这次我们单单就从流水线式的生产者消费者来设计并发。具体的文章demo请看<<.Net中的并行编程-4.实现高性能异步队列>><<.Net中的并行编程-7.基于BlockingCollection实现高性能异步队列>>,代码设计逻辑请看下图:
图1是阻塞队列的并发模式简图,图二是异步队列的并发模式简图。
参考上文链接的代码,异步队列的实现逻辑不同于阻塞队列的实现逻辑,但其实差不多,异步队列是多消费者的形式消费,在递归中不断的调用task开启新的线程,而且消费者线程的数量取决于队列的数量,这就不太好了,当然我们可以做下改进,阻塞队列是单消费者的形式消费,我们可以很方便的改为多消费者。总的来说,这个的设计还是很不错的。做下笔记,回头再好好的研究下,以后直接放到项目中用,以及后面的春招!
最新文章
- [LeetCode] Distinct Subsequences 不同的子序列
- CAD的输出成高清jpg图片
- 查找html节点的方法
- 浅谈HTTP请求头content-type
- Android Xutils 框架(转)
- A BRIEF HISTORY OF COMPUTERS
- Android学习参考2
- Python中变量的作用域(variable scope)
- Perl 关于 use strict 的用法
- Yii Active Record 查询结果转化成数组
- Python框架
- 在VPS上安裝BT軟體Transmission
- EXCEL 两人的建立Y轴
- 随机生成n个不相等的随机数
- REALTEK 刷机方法 法
- overridePendingTransition的简介
- Echarts学习之路2(基本配置项)
- PHP画矩形,椭圆,圆,画椭圆弧 ,饼状图
- JustOj 2009: P1016 (dp)
- html 之 body topmargin、leftmargin、rightmargin、bottomnargin