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

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

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

定 價:¥59.80

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

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

內(nèi)容簡介

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

作者簡介

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

圖書目錄

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