2010年8月28日
摘要: 在上篇文章中介绍了如何Break、Stop循环,以及如何定义线程局部变量。在本文中介绍如何在外部去取消循环、以及异常的处理。Cancel在并行的循环中支持通过传递ParallelOptions参数中的CancellationToken进行取消循环的控制,我们可以CancellationTokenSource实例化之后传递给ParallelOptions对象Cancellation值。下面来看个示例... 阅读全文
posted @ 2010-08-28 17:58 一粒沙 阅读(370) 评论(0) 推荐(0) 编辑
摘要: 在上篇文章中看过了使用Parrallel.For、Parael.Foreach在效率上给我们带来的提高。本文就来如何终止循环、线程局部变量 进行说明。Thread-Local Variables首先我们来看下线程局部变量,是的我们也许一直在想我们如何去定义一个线程局部变量呢。先看段顺序执行的代码:view source print?01.[TestMethod()] 02.public void ... 阅读全文
posted @ 2010-08-28 17:57 一粒沙 阅读(558) 评论(0) 推荐(0) 编辑
摘要: 现在已经进入了多核的时代,我们的程序如何更多的利用好cpu,答案是并行处理。在.net4.0之前我们要开发并行的程序是非常的困难,在.net4.0中,在命名空间System.Threading.Tasks提供了方便的并行开发的类库。本文中主要看看Data Parallel,看看并行的For、Foreach。Parallel.For首先先写一个普通的循环:view source print?01.p... 阅读全文
posted @ 2010-08-28 17:55 一粒沙 阅读(405) 评论(0) 推荐(0) 编辑
摘要: 在上篇文章介绍了ExpandoObject的基本使用,本篇文章就ExpandoObject的一些高级的使用进行一些示例。例子首先要说的一点,为什么我们在定义动态类型的ExpandoObject时,必须要使用dynamic关键字呢,因为如果我们使用ExpandoObject 进行定义时,那么我们定义的变量就是一个静态类型ExpandoObject的实例化。下面我们来做个例子就是如何将xml的表示成面... 阅读全文
posted @ 2010-08-28 17:53 一粒沙 阅读(983) 评论(0) 推荐(0) 编辑
摘要: 本篇文章中就ExpandoObject的基本使用进行一些demo。我们几乎都知道dynamic特性是.net 4.0中一个主要的新特性,而ExpandoObject正是这样的一个动态的类型。ExpandoObject允许我们在实例化之后在运行时进行成员的增加、删除。下面我们来看下基本的使用:Adding Members1)实例化如果需要延迟绑定的话,我们需要用dynamic来定义ExpandpOb... 阅读全文
posted @ 2010-08-28 17:50 一粒沙 阅读(1315) 评论(0) 推荐(0) 编辑