NCindy

.net平台上的高性能网络程序开发框架

Concurrency and Coordination Runtime读后感(1)

本文是我对MSDN Magazine 2006年9月号中ConcurrentAffairs专栏的读后感
原文作者:Jeffrey Richter,原文链接:http://msdn.microsoft.com/msdnmag/issues/06/09/ConcurrentAffairs/
=========================

微软最近发布了Microsoft Robotics Studio的10月CTP预览版,这个工具包中里面有一个叫做Concurrency and Coordination Runtime (CCR)的基于CLR的类库(CCR.Core.dll)。CCR使得异步编程比传统的多线程编程更加简单。

程序员往往喜欢使用工作线程和同步I/O来模拟异步I/O,因为编写同步I/O的代码非常简单也更加符合人的思考逻辑,只需要把原来的I/O操作封装在一个函数里,然后使用一个工作线程来执行这个函数就可以了。而当使用异步I/O的时候,程序员需要把发起I/O请求和I/O完成处理分开来。而且I/O请求完成的动作难以协调。
CCR库为开发人员极大的简化了这些任务。CCR提供了一系列类,给开发者一个他们可以用简单的表达处理I/O完成操作的复杂的协同模式的简单的对象模型
。此外,CCR提供了高性能线程池,你可以用这个线程池来执行响应I/O完成的任务。当你将CCR和一些新的C#语言特性(比如匿名方法、迭代器)组合使用的时候,你可以很容易的编写响应及时和可伸缩的应用。

看到CCR这些诱人的特性,是不是很开心?别急,在你把CCR集成到你的应用程序之前,你首先要熟悉几个类。

To be continued...

posted on 2006-10-16 21:44  iceboundrock  阅读(661)  评论(0编辑  收藏  举报

导航