CCR 编写一个不用创建线程,不用考虑资源互斥的多线程程序

Code

     这次的例子,是一个很简单的控制台,她将面对瞬间提交的百万的数据,而面不改色(CPU、内存非常平稳),队列中始终只保存最新的数据,每次只处理cpu个数据(我的机器是双核的,所以,在我这里,就是每个CPU一个线程,真正的并行运行哦....)

 

     最后,我们要把数据、处理函数、任务队列 组合起来,这就是上面代码中的step4,这步其实做了2个工作:

1、把port和处理函数,封装为Receive关联起来;

2、把Receive和DispatcherQueue关联起来;

 

    这样,我们就完成了,所有的工作,CCR提供了一个模式,让我们只需要把需要并发、异步处理的工作,分解为:

1、输入数据--->post到Port内;

2、处理过程--->做成委托关联到任务队列中

 

例子

中文帮助手则

posted @ 2008-09-10 14:33  violence  阅读(273)  评论(0编辑  收藏  举报