注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)程序設(shè)計(jì)綜合Win32多線程程序設(shè)計(jì):線程完全手冊(cè)

Win32多線程程序設(shè)計(jì):線程完全手冊(cè)

Win32多線程程序設(shè)計(jì):線程完全手冊(cè)

定 價(jià):¥59.80

作 者: Jim Beveridge,Robert Wiener著;侯捷譯
出版社: 華中科技大學(xué)出版社
叢編項(xiàng): 侯捷譯作系列
標(biāo) 簽: 暫缺

ISBN: 9787560926384 出版時(shí)間: 2002-01-01 包裝: 膠版紙
開(kāi)本: 23cm+光盤1片 頁(yè)數(shù): 480 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  使用線程,你可以產(chǎn)生高效率的服務(wù)器,建立Internet服務(wù)器擴(kuò)充軟件,獲得多CPU系統(tǒng)的好處,建立精巧的COM/OLE對(duì)象,并改善程序的反應(yīng)度。寫出這樣的軟件,需要更多的理論基礎(chǔ),以及一本參考手冊(cè);需要廣泛了解每一件事情如何彼此相稱,需要一份指南,告訴你什么可以正常運(yùn)作,什么不能!通過(guò)Win32 API、Windows NT以及Windows 95都可以支持多線程程序設(shè)計(jì),但是這個(gè)重要主題的信息卻極稀有而不夠詳盡。在《Win32多線程程序設(shè)計(jì)》這本書中,Jim Beveridge和Robert Wiener告訴你什么時(shí)機(jī)、什么地點(diǎn)、什么方法可以使用多線程。本書主題包括:● Internet開(kāi)發(fā)范例,包括ISAPI和WinSock。 ● 如何在服務(wù)器中使用線程和overlapped I/O?!?如何在多線程環(huán)境中使用C runtime函數(shù)庫(kù)和MFC.● 以C和C++寫成的各個(gè)范例程序?!?UNIX環(huán)境比較。讓UNIX下的開(kāi)發(fā)人員能轉(zhuǎn)移到Win32.

作者簡(jiǎn)介

  譯者:侯捷臺(tái)灣資深技術(shù)作家、譯者。閑靜少言。不慕榮利。好讀書。求甚解。侯捷先生以為“任何書籍如果缺少讀者,再怎么優(yōu)秀都將喪失價(jià)值。因此,做為一位書評(píng)人,我非常樂(lè)見(jiàn)評(píng)選風(fēng)氣興盛。雖然所謂“喜愛(ài)”帶有很大的主觀成份,但這類評(píng)選仍然具有十分正面的價(jià)值,可以帶給讀者、作者、譯者、出版者很大的參與感,對(duì)于讀書風(fēng)氣、好書浮現(xiàn)率都有幫助。”深入淺出MFC(第二版)>>更多作品

圖書目錄

函數(shù)索引(Function Index) 封面里                  
 常見(jiàn)問(wèn)答集(Frequently Asked Questions) vii                  
 第一篇  上路吧, 線程                  
 第1章  為什么要"千頭萬(wàn)緒" 3                  
 一條曲折的路 4                  
 與線程共枕 7                  
 為什么最終用戶也需要多線程多任務(wù) 8                  
 Win32基礎(chǔ) 10                  
 Context Switching 14                  
 Race Conditions(競(jìng)爭(zhēng)條件) 16                  
 Atomic Operations(原子操作) 19                  
 線程之間如何通訊 22                  
 好消息與壞消息 22                  
 第2章  線程的第一次接觸 25                  
 產(chǎn)生一個(gè)線程 26                  
 使用多個(gè)線程的結(jié)果 31                  
 核心對(duì)象(Kernel Objects) 36                  
 線程結(jié)束代碼(Exit Code) 40                  
 結(jié)束一個(gè)線程 45                  
 錯(cuò)誤處理 48                  
 后臺(tái)打印(Background Printing) 50                  
 成功的秘訣 59                  
 第3章  快跑與等待 61                  
 看似閑暇卻忙碌(Busy Waiting) 62                  
 性能監(jiān)視器(Performance Monitor) 66                  
 等待一個(gè)線程的結(jié)束 72                  
 叮咚:被激發(fā)的對(duì)象(Signaled Objects) 74                  
 等待多個(gè)對(duì)象 77                  
 在一個(gè)GUI程序中等待 85                  
 提要 91                  
 第4章  同步控制(Synchronization) 93                  
 Critical Sections(關(guān)鍵區(qū)域. 臨界區(qū)域) 95                  
 死鎖(Deadlock) 102                  
 哲學(xué)家進(jìn)餐問(wèn)題(The Dining Philosophers) 103                  
 互斥器(Mutexes) 107                  
 信號(hào)量(Semaphores) 115                  
 事件(Event Objects) 120                  
 從Worker線程中顯示輸出 124                  
 Interlocked Variables 125                  
 同步機(jī)制摘要 128                  
 第5章  不要讓線程成為脫韁野馬 131                  
 干凈地終止一個(gè)線程 132                  
 線程優(yōu)先權(quán)(Thread Priority) 138                  
 初始化一個(gè)線程 144                  
 提要 146                  
 第6章  Overlapped I/O, 在你身后變戲法 149                  
 Win32文件操作函數(shù) 151                  
 被激發(fā)的File Handles 155                  
 被激發(fā)的Event對(duì)象 159                  
 異步過(guò)程調(diào)用(Asynchronous Procedure Calls, APCs) 163                  
 對(duì)文件進(jìn)行Overlapped I/O的缺點(diǎn) 171                  
 I/O Completion Ports 172                  
 對(duì)Sockets使用Overlapped I/O 182                  
 提要 190                  
 第二篇  多線程程序設(shè)計(jì)的工具與手法                  
 第7章  數(shù)據(jù)一致性(Data Consistency) 195                  
 認(rèn)識(shí)volatile關(guān)鍵字 196                  
 Referential Integrity 200                  
 The Readers/Writers Lock 205                  
 我需要鎖定嗎? 214                  
 Lock Granularity(鎖定粒度) 215                  
 提要 216                  
 第8章  使用C Run-time Library 219                  
 什么是C Runtime Library多線程版本 220                  
 選擇一個(gè)多線程版本的C Runtime Library 221                  
 以C Runtime Library啟動(dòng)線程 224                  
 哪一個(gè)好:CreateThread()抑或 _beginthreadex()? 227                  
 避免stdio.h 237                  
 一個(gè)安全的多線程程序 240                  
 結(jié)束進(jìn)程(Process) 248                  
 為什么你應(yīng)該避免 _beginthread() 248                  
 提要 251                  
 第9章  使用C++ 253                  
 處理有問(wèn)題的 _beginthreadex()函數(shù)原型 253                  
 以一個(gè)C++ 對(duì)象啟動(dòng)一個(gè)線程 256                  
 建立比較安全的Critical Sections 265                  
 建立比較安全的Locks 268                  
 建立可互換(Interchangeable)的locks 270                  
 異常情況(Exceptions)的處理 274                  
 提要 274                  
 第10章  MFC中的線程 277                  
 在MFC中啟動(dòng)一個(gè)Worker線程 278                  
 安全地使用AfxBeginThread()的傳回值 282                  
 在MFC中啟動(dòng)一個(gè)UI線程 288                  
 與MFC對(duì)象共處 293                  
 MFC的同步控制 296                  
 MFC對(duì)于MsgWaitForMultipleObjects()的支持 300                  
 提要 301                  
 第11章  GDI與窗口管理 303                  
 線程的消息隊(duì)列 304                  
 消息如何周游列國(guó) 306                  
 GUI效率問(wèn)題 311                  
 以Worker線程完成多線程版MDI程序 311                  
 多個(gè)上層窗口(Top Level Windows)如何是好? 313                  
 線程之間的通訊 314                  
 NT的影子線程(shadow thread) 316                  
 關(guān)于"Cancel"對(duì)話框 316                  
 鎖住GDI對(duì)象 319                  
 提要 319                  
 第12章  調(diào)試 321                  
 使用Windows NT 322                  
 有計(jì)劃地對(duì)付錯(cuò)誤 322                  
 Bench Testing 323                  
 線程對(duì)話框 324                  
 運(yùn)轉(zhuǎn)記錄(Logging) 325                  
 內(nèi)存記號(hào)(Memory Trails) 327                  
 硬件調(diào)試寄存器(Hardware Debug Registers) 328                  
 科學(xué)方法 330                  
 提要 333                  
                    
 第13章  進(jìn)程之間的通訊(Interprocess Communication) 335                  
 以消息隊(duì)列權(quán)充數(shù)據(jù)轉(zhuǎn)運(yùn)中心 336                  
 使用共享內(nèi)存(Shared Memory) 345                  
 使用指針指向共享內(nèi)存(Shared Memory) 354                  
 較高層次的進(jìn)程通訊(IPC) 362                  
 提要 364                  
 第14章  建造 DLLs 367                  
 DLL的通告消息(Notifications) 369                  
 通告消息(Notifications)的問(wèn)題 375                  
 DLL進(jìn)入點(diǎn)的依序執(zhí)行(Serialization)特性 378                  
 MFC中的DLL通告消息(Notifications) 379                  
 喂食給Worker線程 380                  
 線程局部存儲(chǔ)(Thread Local Storage, TLS) 384                  
 _declspec(thread) 390                  
 數(shù)據(jù)的一致性 392                  
 提要 393                  
 第三篇  真實(shí)世界中的多線程應(yīng)用程序                  
 第15章  規(guī)劃一個(gè)應(yīng)用程序 397                  
 多線程的理由 398                  
 要線程還是要進(jìn)程? 403                  
 多線程程序的架構(gòu) 404                  
 評(píng)估既有程序代碼的適用性 406                  
 對(duì)ODBC做規(guī)劃 411                  
 第三方的函數(shù)庫(kù)(Third-Party Libraries) 413                  
 提要 413                  
 第16章  ISAPI 415                  
 Web服務(wù)器及其工作原理 416                  
 ISAPI 417                  
 IS2ODBC范例程序 420                  
 提要 427                  
 第17章  OLE, ActiveX, COM 429                  
 COM的線程模型(COM Threading Models) 431                  
 AUTOINCR范例程序 437                  
 提要 443                  
 附錄A  MTVERIFY宏 445                  
 附錄B  更多的信息 451                  

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.talentonion.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)