惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Attack and Defense Labs
Attack and Defense Labs
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
The Hacker News
The Hacker News
C
Cyber Attacks, Cyber Crime and Cyber Security
A
Arctic Wolf
Recent Commits to openclaw:main
Recent Commits to openclaw:main
T
Troy Hunt's Blog
小众软件
小众软件
L
LangChain Blog
Schneier on Security
Schneier on Security
D
DataBreaches.Net
爱范儿
爱范儿
P
Proofpoint News Feed
博客园 - 聂微东
M
MIT News - Artificial intelligence
Hacker News: Ask HN
Hacker News: Ask HN
T
Tailwind CSS Blog
Vercel News
Vercel News
V
Visual Studio Blog
aimingoo的专栏
aimingoo的专栏
云风的 BLOG
云风的 BLOG
Jina AI
Jina AI
阮一峰的网络日志
阮一峰的网络日志
博客园 - 【当耐特】
博客园 - 三生石上(FineUI控件)
雷峰网
雷峰网
T
Threat Research - Cisco Blogs
Simon Willison's Weblog
Simon Willison's Weblog
月光博客
月光博客
Spread Privacy
Spread Privacy
C
Cisco Blogs
S
Securelist
量子位
S
Security @ Cisco Blogs
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
Tenable Blog
WordPress大学
WordPress大学
T
The Exploit Database - CXSecurity.com
宝玉的分享
宝玉的分享
C
Cybersecurity and Infrastructure Security Agency CISA
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
MongoDB | Blog
MongoDB | Blog
C
CERT Recently Published Vulnerability Notes
Help Net Security
Help Net Security
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 司徒正美
B
Blog RSS Feed
博客园_首页
Security Archives - TechRepublic
Security Archives - TechRepublic
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org

博客园 - iceboundrock

Introduction to the Reactive Extensions for JavaScript文章集合(收集贴) 美化VS2010在远程桌面/无法启动硬件加速渲染的机器下的字体显示 CCR源码分析-CCR架构 CCR源码分析-分析环境准备 CCR相关的Channel 9视频 DSS简介 也许你还不知道的一些关于App Domain的事 Common UNIX directories 几篇优化.net动态调用性能的文章 安装TFS 2008备注 Windbg点滴 MySQL Connector/Net 5.20安装后无法在VS2008中正常使用的问题 LAMP周边点滴 并行与并发编程学习心得 并发和协调运行时 与非CCR代码互操作 失败处理 迭代器 任务调度
其它并发方法
iceboundrock · 2007-12-18 · via 博客园 - iceboundrock

原文链接

CCR可以表达(当需要的时候通过简单的助手方法)各种其它的并发方法,例如:

  1. .net中的异步编程模型(APM):MSDN杂志中的Concurrent Affairs文章有一些用CCR适配器助手和APM APIs来调用系统类库的例子。与非CCR代码互操作章节有一些使用CCR和它的迭带器支持来简化APM例子,这些例子通过直接返回并继续异步I/O, 可以不使用delegate和回调。
  2. Futures:Futures被表达为立即从一个类中返回一个port,并且并行的激活处理函数。使用一个dispatcher queue来并行的执行调用者和被调用的代码,然后一个操作系统事件会阻塞一个等待结果的公共方法(假定一个同步未来模式(assuming a synchronous future pattern),看不懂,再汗一个-_-!!!)。为了调度未来工作项(future work items),CCR调度器设计自然的在适当的时候充分利用CPU处理能力来执行高效计划,使用用户定义的策略来进行速度控制和负载均衡。分发队列是FIFO对,但是DispatcherQueue的实现暴露了一组虚方法,允许继承类来实现LIFO,随机插入等等。
  3. Promises:Promises被表达的与Futures非常相似:一个CCR Port是一个Promise的结果,而一个破坏Promise的错误,是一个可以从port中获取的元素。
  4. 连接(joins):连接编程在操作系统中出现已经有很长时间了(WaitForMultiple, I/O Completion ports in NT, etc),CCR更加用动态连接和多元素接收器对连接进行了扩展。
  5. 传统的线程原语,例如读写锁、锁和监控器(monitors):CCR可以通过port和仲裁器来表达线程同步原语,并且取代显式的对共享内存的锁定。问题就从保护共享内存变成了调度和协议设计。