NCindy

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

12 2007 档案

并行与并发编程学习心得
摘要: 最近一直在学习并行与并发相关的东西,从用CCR户手册到erlang论文,从Channel 9的视频到MSDN的文章到,略有心得拿出来分享一下: 就像多任务操作系统中一个进程不能直接访问(OK,起码是不能很轻松的访问)另外一个进程的内存 思路 分离异步操作的执行方法和数据提供。一个有意义的程序执行需要两个部分:代码和数据。如果代码得到了数据之后就可以去执行了,能够并行执行的代码中,共享的数据越...阅读全文

posted @ 2007-12-23 00:08 iceboundrock 阅读(631) | 评论 (1) 编辑

并发和协调运行时
摘要: 原文链接 微软最近发布了为机器人编写应用的新的Microsoft Robotics Studio的预览版。这些新的工具很有趣,但是它应该比仅仅为机器人编程更加有趣。   Dispatcher类 当你的应用程序初始化的时候,你首先希望构造一个Dispatcher对象来管理一组线程。它实际上是一个线程池。和CLR的线程池一样,这些线程调用方法(通过delegate)来执行任务: p...阅读全文

posted @ 2007-12-18 14:47 iceboundrock 阅读(206) | 评论 (0) 编辑

其它并发方法
摘要: 原文链接CCR可以表达(当需要的时候通过简单的助手方法)各种其它的并发方法,例如: .net中的异步编程模型(APM):MSDN杂志中的Concurrent Affairs文章有一些用CCR适配器助手和APM APIs来调用系统类库的例子。与非CCR代码互操作章节有一些使用CCR和它的迭带器支持来简化APM例子,这些例子通过直接返回并继续异步I/O, 可以不使用delegate和回调。 Futur...阅读全文

posted @ 2007-12-18 10:36 iceboundrock 阅读(293) | 评论 (0) 编辑

与非CCR代码互操作
摘要: CCR可以轻松的承载STA组件或者与它互操作阅读全文

posted @ 2007-12-17 22:39 iceboundrock 阅读(413) | 评论 (0) 编辑

失败处理
摘要: 原文链接传统的失败处理策略遵循如下模式: 对于同步方法调用,调用者检查一个或者多个返回值。被调用的方法使用调用者的执行上下文(通常执行上下文是一个线程)来运行。 使用结构化异常处理,调用者将同步方法调用包裹在try/catch/finally语句中,依赖catch{}块的执行来处理错误或者使用catch{}块加上显式的检查被调用方法的返回值。 依赖于被调用组件的各种补偿实现的事务,操作系统基础设置...阅读全文

posted @ 2007-12-17 11:23 iceboundrock 阅读(288) | 评论 (0) 编辑

迭代器
摘要: CCR以新颖的方式使用了C# 2.0语言的迭代器功能:程序员可以用顺序的方式来编写代码,迭代返回(yielding)CCR仲裁器或者其他的CCR Task,而不需要使用delegates来嵌套异步行为(也叫做回调)。阅读全文

posted @ 2007-12-14 14:30 iceboundrock 阅读(434) | 评论 (0) 编辑

任务调度
摘要: CCR第三个重要的组成部分是任务调度:当有接收器的port上有消息到达时如何生成任务和在有多个执行资源的机器上进行负载均衡。阅读全文

posted @ 2007-12-12 18:03 iceboundrock 阅读(833) | 评论 (2) 编辑

协调原语(Coordination Primitives)
摘要: 异步编程的困难在于没有简单的方法来协调多个操作,处理部分失败(多个操作中一个失败而且其他的成功)和定义异步回调的执行行为。阅读全文

posted @ 2007-12-10 14:31 iceboundrock 阅读(514) | 评论 (0) 编辑

Ports和PortSets
摘要: CCR port是最常见的原语,它被用作两个组件的交互点。阅读全文

posted @ 2007-12-10 14:19 iceboundrock 阅读(415) | 评论 (0) 编辑

CCR API概览
摘要: 简要介绍CCR中的主要classes阅读全文

posted @ 2007-12-10 12:31 iceboundrock 阅读(561) | 评论 (0) 编辑

CCR介绍
摘要: CCR的功能和解决的问题阅读全文

posted @ 2007-12-09 21:28 iceboundrock 阅读(1077) | 评论 (0) 编辑

CCR用户指南
摘要: CCR介绍 API概览 Ports和PortSet 协调原语(Coordination Primitives) 任务调度 迭代器 失败处理 与非CCR代码互操作 其他的并发方法阅读全文

posted @ 2007-12-09 20:28 iceboundrock 阅读(1011) | 评论 (1) 编辑

导航

统计信息

News