Web Analytics
yangyang

码农兼一个普普通通小青年

All Posts in 2013.10


浅谈并发与并行(二)

上文讲解了.NET中的采用Task可以实现任务的并行。除了任务的并行之外,还有数据的并行。和任务的并行不同,数据的并行是指并行的源头不是算法的代码,而是算法操作的数据的本身,TPL (Task Parallel Library)中提供了几个数据并行的API. 一 数据的并行 1.1 Parallel.For和Parallel.ForEach for 和foreach语句也适合进行并行化。实际上,随着并行计算的流行,对这种循环遍历进行并行化也有过很多种尝试。这些方法包括对在编程语言进行扩充等,比如C++里面的OpenMP标准。C#并行类库(Task Parallel Library, TPL)通过提供一些API实现了数据并行化功能,这就是Parallel.For和Parallel.ForEach方法,分别对应平常用到的for和foreach。 回到上文中的遍历数 …

Concurrent Parallel Interlock Lock-free Programming .NET Performance Optimizing

浅谈Excel开发:七 Excel 自定义任务窗体

前面花了三篇文章讲解了Excel中的UDF函数,RTD函数和异步UDF函数,这些都是Excel开发中的重中之重。本文现在开始接着第二篇文章的菜单系统开始讲解Excel中可供开发的界面元素,本文要讲解的是Excel中的自定义任务面板(Custome Task Panel,CTP) 。 自定义任务面板在Office 2003中就引入了,相信大家都用过Word中的字典和插入剪贴画功能,左侧的边栏就是自定义面板。如下图: 但是Office 2003的自定义面板并没有给我们开发人员提供开发接口,也就是说,我们不能创建我们的自定义的任务面板。 从Office 2007版本开始,Office的一个显著变化是添加了更多的快速预览以及自定义面板,这在Office的各个产品中均有体现。如下图: 更重要的是,从Office 2007开始,CTP接口开放使得 …

Excel Development CTP Custome-Task-Panel VSTO Shared Add-in