Win32多线程是MicrosoftDeveloperNetwork技术小组研发的多线程应用程序的策略。
Win32多线程的性能:
作者:Microsoft公司供稿
RuedigerR。Asche
摘要
本文讨论将单线程应用程序重新编写成多线程应用程序的策略。它以Microsoft?Windows?95和WindowsNT?的平台为例,从吞吐量(throughput)和响应方面,与兼容的单线程计算相比较而分析了多线程计算的性能。
介绍
在您所能够找到的有关多线程的资料中,多数都是讲述同步概念的。例如,如何串行化(serialize)共享公共数据的线程。这种把重点放在讨论同步上是有意义的,因为同步是多线程编程中不可缺少的一部分。本文则后退了一步(takesastepback),主要讨论有关多线程中很少有人涉及的一面:决定一个计算如何能够被有意义地拆分为多个线程。本文中所使用的示例程序,THRDPERF,在Microsoft?Windows?95和WindowsNT?两个平台之上,针对同一个计算采取串行和并发两种方法分别实现了测试套件(testsuite),并从吞吐量和性能两方面来比较它们。
本文的第一部分建立了一些有关多线程应用程序的词汇(vocabulary),讨论测试套件的范围,并且介绍了示例程序套件是如何设计的。第二部分讨论测试的结果,并且包括对于多线程应用程序设计的建议。与之相关的文章InteractingwithMicrosoftExcel:ACaseStudyinOLEAutomation讨论有关该示例程序套件的一个有趣的问题,即使用测试集合所获得的数据是如何使用OLEAutomation被输入MicrosoftExcel中的。
如果您是经验丰富的多线程应用程序编...
(全文)