資料介紹
本書介紹了Windows和.NET程序的一個(gè)基礎(chǔ)單元一線程。開發(fā)人員在開發(fā)高效的C#程序時(shí),應(yīng)很好地理解線程在程序執(zhí)行過程中的作用,多個(gè)線程應(yīng)如何交互才能提高程序的效率,以及開發(fā)多線程應(yīng)用程序時(shí)應(yīng)注意的問題。
線程是GUI和服務(wù)器應(yīng)用程序執(zhí)行的基本方式。如果代碼在GUI中運(yùn)行,說明這些代碼就是線程代碼,ASP.NET 頁面也運(yùn)行在線程環(huán)境中。本書旨在介紹.NET中使用線程的內(nèi)容,特別是C#開發(fā)人員應(yīng)如何使用線程。線程并不容易掌握,而掌握.NET平臺的編程技術(shù)是學(xué)習(xí)線程的必要一步。
本書主要內(nèi)容:
NET 應(yīng)用程序的執(zhí)行方式
線程在.NET中的生命周期
NET Framework使用線程的方式
線程在事件驅(qū)動的環(huán)境中如何工作
如何避免資源的競爭和死鎖
如何同步執(zhí)行多線程
如何調(diào)試多線程應(yīng)用程序
本書自上而下地介紹了.NET執(zhí)行C#代碼的方法。首先描述了Windows線程的定義,它們與.NET進(jìn)程、應(yīng)用程序域的關(guān)系以及線程之間的關(guān)系。討論了線程的調(diào)度(操作系統(tǒng)如何確定卜一個(gè)要處理的線程),接著論述了如何編寫NET代碼來處理線程。之后介紹了線程的同步,讓多個(gè)線程安全地訪問同-資源。本書還介紹了多線程應(yīng)用程序使用的一些典型的體系結(jié)構(gòu),尤其是線程池,并闡述了如何調(diào)試多線程代碼。最后用一一個(gè)完整的例子來說明如何利用線程來建立可伸縮的、高性能的網(wǎng)絡(luò)服務(wù)器。
本書適合從事.NET開發(fā)的C#程序員閱讀,不要求讀者具備任何線程方面的知識。
多線程就是允許復(fù)雜的應(yīng)用程序在同一時(shí)刻執(zhí)行多項(xiàng)任務(wù)。這些程序可以響應(yīng)用戶事件,同時(shí)訪問網(wǎng)絡(luò)資源或文件系統(tǒng)。根據(jù)平臺和操作系統(tǒng)提供的對進(jìn)程的不同控制,編寫這類并發(fā)應(yīng)用程序的方式也不盡相同。例如,Visual Basic 6并沒有提供這類控制,而是在后臺實(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í)退出,以及它將訪問多少數(shù)據(jù)等。但是,Common Language Runtime 除了負(fù)責(zé)程序員不必考慮的內(nèi)存管理之外,它還負(fù)責(zé)管理和清理線程。所以,在NET中,既提供了C++的強(qiáng)大功能,又具有Visual Basic的簡單性。這就是說,多線程應(yīng)用程序引入了單線程程序從來都不會碰到的-整套編程問題。
本書介紹如何利用.NET Framework所提供的線程功能,學(xué)習(xí)線程所提供的各種特性,并指出如何在使用線程的過程中避免可能會遇到的陷阱。
什么時(shí)候使用線程?實(shí)際上,所有的程序都是在線程中執(zhí)行的,所以理解NET和Windows如何執(zhí)行線程,將有助于理解程序在運(yùn)行期間的執(zhí)行情況。Windows Forms應(yīng)用程序使用事件循環(huán)線程來處理用戶界面事件。各個(gè)窗體在不同的線程上執(zhí)行,如果需要在Windows Forms之間交互,就需要在線程之間交互。ASPNET頁面在IS的多線程環(huán)境中執(zhí)行一-同- - 頁面上的:不同請求可以在不同的線程中執(zhí)行,同一頁面可以同時(shí)在多個(gè)線程中執(zhí)行。在訪問ASP.NET頁面上的共享資源時(shí),就會遇到線程問題。
除了編寫在這類多線程環(huán)境下運(yùn)行的代碼之外,還常常需要?jiǎng)?chuàng)建和控制我們自己的線程。例如,需要?jiǎng)?chuàng)建一一個(gè)應(yīng)用程序, 該應(yīng)用程序在處理數(shù)據(jù)時(shí)從來或很少等待,但總是可以響應(yīng)用戶和事件。只有建立-一個(gè) 多線程的應(yīng)用程序,才能實(shí)現(xiàn)這-功能。網(wǎng)上有許多這方面的文章,其他圖書也介紹了如何利用.NET Framework創(chuàng)建線程,如何執(zhí)行基本的操作,不過,實(shí)現(xiàn)代碼只完成了一部分工作。 當(dāng)使用多線程應(yīng)用程序時(shí),有一些操作通常會阻塞應(yīng)用程序,例如文件系統(tǒng)操作,此時(shí)理想的解決方法就是使用線程。當(dāng)同一時(shí)刻有多個(gè)線程在同個(gè)文件上進(jìn)行操作時(shí),就會出現(xiàn)同步問題或可伸縮性問題。本書除了介紹如何創(chuàng)建和操縱線程之外,還將講解如何設(shè)計(jì)應(yīng)用程序,應(yīng)用合適類型的鎖,并在它等候其他操作完成時(shí)不阻塞線程,以避免可能遇到的這些問題。
- 圖解數(shù)字磁帶錄音機(jī)的PDF電子書免費(fèi)下載 99次下載
- 現(xiàn)代無線電實(shí)驗(yàn)的PDF電子書免費(fèi)下載 250次下載
- 半導(dǎo)體收音機(jī)淺談的PDF電子書免費(fèi)下載 162次下載
- 光學(xué)諧振腔的圖解分析與設(shè)計(jì)方法的PDF電子書免費(fèi)下載 123次下載
- 通用集成電路速查手冊的PDF電子書免費(fèi)下載 206次下載
- MATLAB函數(shù)速查手冊PDF電子書免費(fèi)下載 148次下載
- 電子管數(shù)據(jù)手冊合集PDF電子書免費(fèi)下載 72次下載
- 高級語言程序設(shè)計(jì)從菜鳥到大師深入C語言程序設(shè)計(jì)PDF電子書免費(fèi)下載 166次下載
- 模擬工程師電路設(shè)計(jì)指導(dǎo)手冊運(yùn)算放大器PDF電子書免費(fèi)下載 766次下載
- 8051系列單片機(jī)C程序設(shè)計(jì)完全手冊PDF電子書免費(fèi)下載 263次下載
- 電冰箱快速維修PDF電子書免費(fèi)下載 43次下載
- 家電維修1128例PDF電子書免費(fèi)下載 186次下載
- STM8 C語言精品編程100例PDF版電子書免費(fèi)下載 0次下載
- 數(shù)字信號處理算法C語言實(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)置鋰電池供電自動切換電路 1600次閱讀
- C#中使用OpenCV 1090次閱讀
- 多線程之線程池 662次閱讀
- C#上位機(jī)是為了取代組態(tài)軟件? 2200次閱讀
- C語言線程池的實(shí)現(xiàn)方案 1364次閱讀
- C++可移植性及多線程 883次閱讀
- 使用51單片機(jī)讀寫AT29C040的C語言程序免費(fèi)下載 4529次閱讀
- HD44780讀寫單片機(jī)C51程序免費(fèi)下載 4146次閱讀
- C# 中的 Object 虛方法 怎樣重寫 980次閱讀
- 英創(chuàng)信息技術(shù)WinCE平臺C#例程要點(diǎn)介紹 2000次閱讀
- 你知道終端軟件XShell參考手冊怎么操作? 1284次閱讀
- 最新電子書拆解評測系列報(bào)道(一):打開你的眼界 1.2w次閱讀
下載排行
本周
- 1SMD LED選型手冊 貼片燈珠
- 5.47 MB | 4次下載 | 免費(fèi)
- 2明緯S-50-24開關(guān)電源電路圖.pdf
- 0.10 MB | 2次下載 | 5 積分
- 3基本半導(dǎo)體產(chǎn)品在Sic逆變焊機(jī)中的應(yīng)用
- 7.27 MB | 2次下載 | 免費(fèi)
- 4加密芯片的一種破解方法和對應(yīng)加密方案改進(jìn)設(shè)計(jì)
- 0.29 MB | 1次下載 | 免費(fèi)
- 5多功能MPU芯片GC9005數(shù)據(jù)手冊
- 2.67 MB | 1次下載 | 免費(fèi)
- 6基本半導(dǎo)體產(chǎn)品在125kW工商業(yè)儲能PCS中的應(yīng)用
- 10.74 MB | 1次下載 | 免費(fèi)
- 7MOSFET參數(shù)解讀
- 1.59 MB | 1次下載 | 2 積分
- 8550W充電機(jī)原理圖
- 0.13 MB | 1次下載 | 6 積分
本月
- 1使用單片機(jī)實(shí)現(xiàn)七人表決器的程序和仿真資料免費(fèi)下載
- 2.96 MB | 44次下載 | 免費(fèi)
- 2美的電磁爐維修手冊大全
- 1.56 MB | 16次下載 | 5 積分
- 33314A函數(shù)發(fā)生器維修手冊
- 16.30 MB | 13次下載 | 免費(fèi)
- 4STM32F101x8/STM32F101xB手冊
- 1.69 MB | 8次下載 | 1 積分
- 5感應(yīng)筆電路圖
- 0.06 MB | 8次下載 | 免費(fèi)
- 6使用TL431設(shè)計(jì)電源
- 0.67 MB | 7次下載 | 免費(fèi)
- 7不對稱半橋(AHB)反激變換器的分析與設(shè)計(jì)
- 0.68 MB | 6次下載 | 1 積分
- 8LZC3106G高性能諧振控制器中文手冊
- 1.29 MB | 5次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935119次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420062次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73807次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65987次下載 | 10 積分
評論
查看更多