文档详情

Win32多线程程序设计.pdf

发布:2019-03-27约62.52万字共页下载文档
文本预览下载声明
Win32 多线程程序设计 线程完全手册 Multithreading Applications in Win32 The Complete Guide to Threads Jim Beveridge Robert Wiener 著 侯 捷 译 译 序 侯 捷 thread 就是“线”。台湾计算机术语采用“绪”这个译词,“绪”就是“线” 的雅称,multithread 就是“多绪”。大陆计算机术语采用“线程”一词,multithread 就是“多线程”。 Threads (线程)是比processes (进程)更小的执行单元,CPU 的调度与时间 分配皆以 threads 为对象。 计算机领域中早就存在 threads 的观念和技术,但是早期个人电脑操作系统(主 要是 DOS ),别说multithread ,连multitask, m ultiuser 亦不可得。因此,从当时, 乃至延伸至今,threads 的概念和功能对许多非计算机专业科班出身者而言,属于一 种“崇高而难以亲近”的位阶,对许多计算机专业科班出身者而言,却又只是“操 作系统”这门课里高高在上的一个名词。 本书第一章第一句话值得玩味:“计算机工业界每有新的技术问世,人们总是 不遗余力地去担忧它是不是够重要。公司行号虎视眈眈地注意其竞争对手,直到对 方采用并宣扬这技术有多么重要,才开始急急赶上。不论这技术是不是真的很重 要,每一个人都想尽办法让终端用户感觉真的很重要。终端用户终于真的觉得需要 它了——即使他们完全不了解那是什么东西。” threads 大约就是这么一种东西吧。OS/2、Windows NT、Windows 95 这类“新 一代 PC 操作系统”初上市时,便一再强调其抢先式多任务(preemptive multitasking ) 的多线程(multithreaded )环境。拜强势行销之赐,霎时间线头到处飞舞,高深的 译序 计算机术语在街巷里弄之间传播了开来,颇有点 “Neural Fuzzy ”洗衣机的味道。 这倒也算是好事! 搞不清楚 threads 是什么,对终端用户而言或许没有关系,对技术人员可就不 妙。Threads 绝对可以缩短程序的执行时间吗?应该尽量多产生 threads 来帮助程序 工作吗?任何种类的程序都可以获得 multithreads 的好处吗?错!错!错!似是而 非的观念可能会把你的程序带往更坏(而非更好)的境界。 Threads 不是新东西,但它借着 Windows 的庞大装机量初次广泛进入个人电脑 世界,带给个人电脑巨大的冲击。产生 threads 毫无困难,要让它们分工容易,而要 让它们合作,那可就得花相当多的心思。Threads 不一定带来好处,运用不当的话, 它会在执行效率上惩罚你。 Threads 是 Win32 操作系统和 Win32 程序设计不可或缺的重要环节,每一本 重量级 Win32 程序设计书籍都不会忽略这个题目(请参考附录 B )。但是这些书多 半仅以一章(甚至只是一节)来介绍这个题目。不够,真的不够,我们缺乏一本兼 具理论并重实际的 threads 专著。《Multithreading Applications in Win32 》的内容兼 具理论和实际,轻薄短小的身形则在大部头书当道的今天让我们心情轻松。这是一
显示全部
相似文档