基于COM组件实现的应用的多线程化方案

作者: 雒宏哲 (3 篇文章) 日期: 八月 21, 2008 在 8:29 下午

有关于多线程化的相关理论,早就在多任务操作系统的时候建立起来了。而成为所有应用程序设计和实现的时候需要考虑的因素,应该是随着英特尔IA多核平台的发展和普及。

非常推荐英特尔软件学院的多线程化配套课程,里面有有关多线程化分析设计的基本思路和方法,多线程化实现的多种方法,以及多线程化方案的性能优化方法。

这里我再补充一点是有关基于COM组件实现的应用系统进行多线程化时候的实现方式。当前COM已经没有继续技术上的发展了,但是遗留下来的相关系统可能采用了基于COM的实现方案。那么这一情况就是我们在实现多线程优化的时候需要考虑的实现环境,因为它有别于基本的Windows Thread API,或是Linux PThread API。COM的多线程支持采用了微软自定义的套间(Apartment)的多线程模型,对多线程之间私有数据隔离采用了单套间的实现方式,对于多线程之间的数据共享采用了多套间的实现方式。采用套间方式实现COM组件多线程调用之间的交互,避免使用更高级别的进程之间的数据共享,会给基于COM组件的应用带来多线程优化方面的性能提升。

当然,毫无疑问COM技术已经不是主流。我上面的补充建议旨在考虑基于COM组件的遗留系统进行优化时的多线程可选方案,如果是非COM组件的运行环境,就可以轻松采用Intel软件学院的多线程编程课程中的相关多线程化实现技术了。例如基于编译器的OpenMP,Windows Thread API等等。

最后,还有一个好消息,大家可以看看英特尔在多核多线程软件战略中的新发展——Intel Parallel Studio (http://www3.intel.com/cd/software/products/asmo-na/eng/399359.htm)。

分类: 并行计算, 软件技术学习及认证

如需了解英特尔软件产品相关的性能和优化选项,请参阅优化注意事项.

 评论 (1)

2009年01月06日 07:34

sunny0104
sunny0104总分:
125
注册用户
COM用得太少了

 引用 (0)


 写评论  

欲获得技术支持,请访问软件支持页面.
姓名 (必填)*

电子邮件 (必填,不在本页面显示)*

您的 URL (可选)


评论*