代码改变世界

随笔分类 - .NET Framework

.NET 4中的并行编程(下)

2010-04-20 08:12 by Ninja_Lu_Fake, 2765 阅读, 收藏, 编辑
摘要:接上篇。上一次主要讨论了在.NET 4中如何编写并行程序,这次继续上次的话题。 当我们有能力使用前面所介绍的一些结构来构建我们的应用程序时,一个需要考虑的场景是:假如一个并行过程已经开始,在它没有完成前想取消它的话应该怎么做呢?其实这个问题很现实,在多线程程序中也会遇到,当然了,多线程编程时我们可以用Thread.Abort()来终结它,那么在并行中该如何实现呢?老规矩,上Demo: CancellationTokenSource tokenSource = new CancellationTokenSource();CancellationToken token = tokenSource. 阅读全文

.NET 4中的并行编程(上)

2010-04-19 06:46 by Ninja_Lu_Fake, 3652 阅读, 收藏, 编辑
摘要:并行是.NET 4中新加入的特性,为了使程序在多核心多CPU环境运行的更好、更快、更强大。 前面已经说过了,并发和并行是不一样的,并发最多可以算做是多线程,而所谓并行是将任务分散到不同的CPU上同时执行。尤其值得我们关注的是,在Web环境下的先天并行特性,使得并行编程成为解决性能瓶颈的又一武器。 .NET 4中的并行编程主要是Parallel和Task,微软强势构建了TPL(Task Para... 阅读全文

.NET 4在CLR和BCL的一些变化(3)

2010-04-12 22:25 by Ninja_Lu_Fake, 2191 阅读, 收藏, 编辑
摘要:VS2010正式版发布了,从海报中我们可以看到.NET 4在BCL上的改进还是很大的,这一次主要讨论比较Core的变化。 就照海报的顺序说吧。 System.Collections.Generic .NET 4中新加入了名为SortedSet<T>的结构,这是一个很有用的结构,它在内部维护一个集合,使用Add()向SortedSet<T>中添加已存在的项时会被忽略,并且返... 阅读全文

.NET 4在CLR和BCL的一些变化(2)

2010-04-12 12:41 by Ninja_Lu_Fake, 2569 阅读, 收藏, 编辑
摘要:上一篇讨论了.NET 4中关于垃圾回收、线程、并行、全球化等方面的内容,这次我们接着上次往下说。安全 安全是一个很大的概念。在.NET 4中,主要的改进在于对CAS操作的简化。 先前的版本中,如果想要控制资源的安全访问,那么就会使用CAS策略,但是操作往往很复杂,4改进了操作,主要体现在这些方面: 改进的透明模型。透明模型将代码分为了安全、不安全、或许安全,当然,这取决于程序宿主机的设置。于是.N... 阅读全文

.NET 4在CLR和BCL的一些变化(1)

2010-04-11 14:41 by Ninja_Lu_Fake, 3227 阅读, 收藏, 编辑
摘要:VS2010明天就要发布了,伴随而来的是.NETFramework第四个版本的发布,借这个机会,聊聊相对于3.5,4又多了哪些新的特性。 我们知道,.NETFramework是一个渐近发展的框架,自从2.0开始,框架底层本身并没有太大的变化,CLR的版本都是2.0的,4的发布是一个质飞跃,微软直接跳过了CLR3.0的版本而将.NETFramework的版本更新为4,如此看来,先前3.0,3.5的程... 阅读全文