資料介紹
本書介紹了Windows和.NET程序的一個(gè)基礎(chǔ)單元一線程。開發(fā)人員在開發(fā)高效的C#程序時(shí),應(yīng)很好地理解線程在程序執(zhí)行過(guò)程中的作用,多個(gè)線程應(yīng)如何交互才能提高程序的效率,以及開發(fā)多線程應(yīng)用程序時(shí)應(yīng)注意的問(wèn)題。
線程是GUI和服務(wù)器應(yīng)用程序執(zhí)行的基本方式。如果代碼在GUI中運(yùn)行,說(shuō)明這些代碼就是線程代碼,ASP.NET 頁(yè)面也運(yùn)行在線程環(huán)境中。本書旨在介紹.NET中使用線程的內(nèi)容,特別是C#開發(fā)人員應(yīng)如何使用線程。線程并不容易掌握,而掌握.NET平臺(tái)的編程技術(shù)是學(xué)習(xí)線程的必要一步。
本書主要內(nèi)容:
NET 應(yīng)用程序的執(zhí)行方式
線程在.NET中的生命周期
NET Framework使用線程的方式
線程在事件驅(qū)動(dòng)的環(huán)境中如何工作
如何避免資源的競(jìng)爭(zhēng)和死鎖
如何同步執(zhí)行多線程
如何調(diào)試多線程應(yīng)用程序
本書自上而下地介紹了.NET執(zhí)行C#代碼的方法。首先描述了Windows線程的定義,它們與.NET進(jìn)程、應(yīng)用程序域的關(guān)系以及線程之間的關(guān)系。討論了線程的調(diào)度(操作系統(tǒng)如何確定卜一個(gè)要處理的線程),接著論述了如何編寫NET代碼來(lái)處理線程。之后介紹了線程的同步,讓多個(gè)線程安全地訪問(wèn)同-資源。本書還介紹了多線程應(yīng)用程序使用的一些典型的體系結(jié)構(gòu),尤其是線程池,并闡述了如何調(diào)試多線程代碼。最后用一一個(gè)完整的例子來(lái)說(shuō)明如何利用線程來(lái)建立可伸縮的、高性能的網(wǎng)絡(luò)服務(wù)器。
本書適合從事.NET開發(fā)的C#程序員閱讀,不要求讀者具備任何線程方面的知識(shí)。
多線程就是允許復(fù)雜的應(yīng)用程序在同一時(shí)刻執(zhí)行多項(xiàng)任務(wù)。這些程序可以響應(yīng)用戶事件,同時(shí)訪問(wèn)網(wǎng)絡(luò)資源或文件系統(tǒng)。根據(jù)平臺(tái)和操作系統(tǒng)提供的對(duì)進(jìn)程的不同控制,編寫這類并發(fā)應(yīng)用程序的方式也不盡相同。例如,Visual Basic 6并沒(méi)有提供這類控制,而是在后臺(tái)實(shí)現(xiàn)線程的,所以當(dāng)觸發(fā)事件時(shí),它將在某個(gè)線程模型中運(yùn)行相關(guān)的處理代碼,但應(yīng)用程序的程序員并不需要考慮這個(gè)線程。而Visual C++開發(fā)人員必須充分考慮到Windows線程和處理模型的復(fù)雜性,同時(shí)擁有這種線程模型的強(qiáng)大功能: C++程序員可以輕松地創(chuàng)建出多線程的程序,但必須學(xué)習(xí)如何使用很多復(fù)雜的技巧,以確保線程在自己的控制之下。
NET Framework的托管編碼環(huán)境提供了一個(gè)完整而功能強(qiáng)大的線程模型,該模型允許編程人員精確控制在一個(gè)線程中運(yùn)行的內(nèi)容,線程何時(shí)退出,以及它將訪問(wèn)多少數(shù)據(jù)等。但是,Common Language Runtime 除了負(fù)責(zé)程序員不必考慮的內(nèi)存管理之外,它還負(fù)責(zé)管理和清理線程。所以,在NET中,既提供了C++的強(qiáng)大功能,又具有Visual Basic的簡(jiǎn)單性。這就是說(shuō),多線程應(yīng)用程序引入了單線程程序從來(lái)都不會(huì)碰到的-整套編程問(wèn)題。
本書介紹如何利用.NET Framework所提供的線程功能,學(xué)習(xí)線程所提供的各種特性,并指出如何在使用線程的過(guò)程中避免可能會(huì)遇到的陷阱。
什么時(shí)候使用線程?實(shí)際上,所有的程序都是在線程中執(zhí)行的,所以理解NET和Windows如何執(zhí)行線程,將有助于理解程序在運(yùn)行期間的執(zhí)行情況。Windows Forms應(yīng)用程序使用事件循環(huán)線程來(lái)處理用戶界面事件。各個(gè)窗體在不同的線程上執(zhí)行,如果需要在Windows Forms之間交互,就需要在線程之間交互。ASPNET頁(yè)面在IS的多線程環(huán)境中執(zhí)行一-同- - 頁(yè)面上的:不同請(qǐng)求可以在不同的線程中執(zhí)行,同一頁(yè)面可以同時(shí)在多個(gè)線程中執(zhí)行。在訪問(wèn)ASP.NET頁(yè)面上的共享資源時(shí),就會(huì)遇到線程問(wèn)題。
除了編寫在這類多線程環(huán)境下運(yùn)行的代碼之外,還常常需要?jiǎng)?chuàng)建和控制我們自己的線程。例如,需要?jiǎng)?chuàng)建一一個(gè)應(yīng)用程序, 該應(yīng)用程序在處理數(shù)據(jù)時(shí)從來(lái)或很少等待,但總是可以響應(yīng)用戶和事件。只有建立-一個(gè) 多線程的應(yīng)用程序,才能實(shí)現(xiàn)這-功能。網(wǎng)上有許多這方面的文章,其他圖書也介紹了如何利用.NET Framework創(chuàng)建線程,如何執(zhí)行基本的操作,不過(guò),實(shí)現(xiàn)代碼只完成了一部分工作。 當(dāng)使用多線程應(yīng)用程序時(shí),有一些操作通常會(huì)阻塞應(yīng)用程序,例如文件系統(tǒng)操作,此時(shí)理想的解決方法就是使用線程。當(dāng)同一時(shí)刻有多個(gè)線程在同個(gè)文件上進(jìn)行操作時(shí),就會(huì)出現(xiàn)同步問(wèn)題或可伸縮性問(wèn)題。本書除了介紹如何創(chuàng)建和操縱線程之外,還將講解如何設(shè)計(jì)應(yīng)用程序,應(yīng)用合適類型的鎖,并在它等候其他操作完成時(shí)不阻塞線程,以避免可能遇到的這些問(wèn)題。
- 圖解數(shù)字磁帶錄音機(jī)的PDF電子書免費(fèi)下載 99次下載
- 現(xiàn)代無(wú)線電實(shí)驗(yàn)的PDF電子書免費(fèi)下載 250次下載
- 半導(dǎo)體收音機(jī)淺談的PDF電子書免費(fèi)下載 162次下載
- 光學(xué)諧振腔的圖解分析與設(shè)計(jì)方法的PDF電子書免費(fèi)下載 123次下載
- 通用集成電路速查手冊(cè)的PDF電子書免費(fèi)下載 206次下載
- MATLAB函數(shù)速查手冊(cè)PDF電子書免費(fèi)下載 148次下載
- 電子管數(shù)據(jù)手冊(cè)合集PDF電子書免費(fèi)下載 72次下載
- 高級(jí)語(yǔ)言程序設(shè)計(jì)從菜鳥到大師深入C語(yǔ)言程序設(shè)計(jì)PDF電子書免費(fèi)下載 166次下載
- 模擬工程師電路設(shè)計(jì)指導(dǎo)手冊(cè)運(yùn)算放大器PDF電子書免費(fèi)下載 766次下載
- 8051系列單片機(jī)C程序設(shè)計(jì)完全手冊(cè)PDF電子書免費(fèi)下載 263次下載
- 電冰箱快速維修PDF電子書免費(fèi)下載 43次下載
- 家電維修1128例PDF電子書免費(fèi)下載 186次下載
- STM8 C語(yǔ)言精品編程100例PDF版電子書免費(fèi)下載 0次下載
- 數(shù)字信號(hào)處理算法C語(yǔ)言實(shí)現(xiàn)PDF版電子書免費(fèi)下載 0次下載
- 《Visual C++游戲編程基礎(chǔ)》電子書.pdf 0次下載
- 使用C++11新特性實(shí)現(xiàn)一個(gè)通用的線程池設(shè)計(jì) 866次閱讀
- OpenVINO? C# API詳解與演示 599次閱讀
- Halcon的C#二次開發(fā)及經(jīng)驗(yàn)分享 2929次閱讀
- 電子書閱讀器內(nèi)置鋰電池供電自動(dòng)切換電路 1600次閱讀
- C#中使用OpenCV 1090次閱讀
- 多線程之線程池 662次閱讀
- C#上位機(jī)是為了取代組態(tài)軟件? 2200次閱讀
- C語(yǔ)言線程池的實(shí)現(xiàn)方案 1364次閱讀
- C++可移植性及多線程 883次閱讀
- 使用51單片機(jī)讀寫AT29C040的C語(yǔ)言程序免費(fèi)下載 4529次閱讀
- HD44780讀寫單片機(jī)C51程序免費(fèi)下載 4146次閱讀
- C# 中的 Object 虛方法 怎樣重寫 980次閱讀
- 英創(chuàng)信息技術(shù)WinCE平臺(tái)C#例程要點(diǎn)介紹 2000次閱讀
- 你知道終端軟件XShell參考手冊(cè)怎么操作? 1284次閱讀
- 最新電子書拆解評(píng)測(cè)系列報(bào)道(一):打開你的眼界 1.2w次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1490次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 92次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識(shí)別和講解說(shuō)明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費(fèi)
- 6基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
- 7藍(lán)牙設(shè)備在嵌入式領(lǐng)域的廣泛應(yīng)用
- 0.63 MB | 3次下載 | 免費(fèi)
- 89天練會(huì)電子電路識(shí)圖
- 5.91 MB | 3次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評(píng)論
查看更多