<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-7  評論-9  文章-0  trackbacks-0

    第1章   介紹

        編寫正確的程序難,編寫正確的并發程序更難。與串行程序相比,在并發程序中有更多容易出錯的東西。那么,為什么我們要關心并發呢?線程是Java語言的一個不可忽視的特性,使用線程可以將復雜的異步代碼調整為簡單直線式代碼,從而簡化復雜系統的開發。此外,線程是開發利用多處理器系統計算能力最容易的方式。隨著處理器數量的增加,有效地利用并發將變得越來越重要。

    1.1     并發的(非常)簡短歷史

    在過去,計算機沒有操作系統;計算機從開始到結束僅執行一個單一程序,此程序直接訪問機器的所有資源。如此情況,不但編寫運行于裸機上的程序是困難的,而且某一時刻僅運行一個單一程序也是對昂貴而稀缺的計算機資源的低效使用。

    操作系統發展到允許多個程序同時運行,每個進程中運行一個獨立的程序:程序是隔離的,獨立執行的,操作系統為程序分配像內存、文件句柄和安全證書這樣的資源。如果進程需要與另一個進程通信,可以通過各種粗粒度的通信機制:套接字(socket)、信號處理器(signal handlers)、共享內存(shared memory)、信號量(semaphores)和文件(files)

    多種促進因素推動操作系統允許多個程序同時執行:

    資源利用。程序有時候必須等待像輸入或輸出這樣的外部操作,而等待期間又不能做一些有用的工作。利用這段等待時間讓另外一個程序運行顯得更有效。

    公平。多個用戶和應用程序可能對機器資源有平等的要求。讓多個程序通過細粒度的時間片共享計算機比讓一個程序運行完再啟動另一個程序更可取。

    便利。編寫多個程序,每個程序執行一個單一任務,在必要的時候讓它們互相協調,這要比編寫一個執行所有任務的單一程序更容易,更令人滿意。

    在早期的分時系統中,每個進程就是一個虛擬的馮諾依曼計算機;進程有一個存儲指令和數據的內存空間,根據機器語言的語義順序執行指令,通過操作系統的一組I/O原語與外界交互。對于每條執行的執令都有一個對“下一條指令”清晰的定義,并根據指令集的規則控制程序流程。今天幾乎所有廣泛使用的編程語言都遵循串行編程模型,在其語義規范中明確定義了在一個特定動作執行之后“下一個動作是什么”。

    串行編程模型既直觀又自然,因為它模仿了人類的工作方式:一次只做一件事,大多數時候是按順序去做的。起床,穿上睡衣,下樓,開始準備茶點。就像在編程語言中一樣,這些現實世界中的每個動作都是一個細粒度動作序列的抽象----打開櫥柜,選一款茶葉,取適量放入茶壺,看水壺中是否有足夠的水,如果沒有則在水壺中加一些水,把水壺放到爐子上,打開爐子,等水燒開,等等。最后一步----等水燒開----也意味著某種程度的異步。在水加熱的過程中,你可以干等,也可以在此時做一些其他任務,例如開始烤面包(另一個異步任務)或者取份報紙回來,同時要知道得留意水壺。水壺和烤箱的生產廠商了解他們的產品經常在異步方式下使用,所以當水壺或烤箱完成工作時會發出聲響信號。找出串行和異步之間適當的平衡通常是高效人士的特征----程序也是如此。

    相同的關注點(資源利用,公平和便利)不僅激發了進程的發展,也促進了線程的發展。線程允許程序控制流的多個分支共存于一個進程中。線程共享進程范圍內的資源,例如內存和文件句柄,但每個線程有自己的程序計數器,堆棧和本地變量。線程也提供了在多處理器系統上對硬件并行利用的自然分解(譯注:以線程為單位有效分配硬件資源,發揮出硬件并行的優勢);在同一個程序中的多個線程可以在多個CPU上同時調度。

    線程有時稱為輕量級進程,大多數現代操作系統都將線程,而不是進程,作為調度的基本單位。

    posted on 2011-08-24 18:01 jeffma 閱讀(2191) 評論(2)  編輯  收藏

    評論:
    # re: Java并發編程實踐 第1章(翻譯) 2011-08-24 18:15 | gaohongyan
    老大你想做什么!
    這本書已經翻譯過了吧  回復  更多評論
      
    # re: Java并發編程實踐 第1章(翻譯) 2011-09-01 13:12 | 大道至簡
    恩,支持!  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 成人电影在线免费观看| 日本精品久久久久久久久免费 | 亚洲国产无套无码av电影| 无码免费又爽又高潮喷水的视频| 破了亲妺妺的处免费视频国产| 亚洲一线产区二线产区区| 最近中文字幕无吗高清免费视频| 亚洲人xxx日本人18| 夫妻免费无码V看片| 看成年女人免费午夜视频| 亚洲国产成人影院播放| **aaaaa毛片免费同男同女| 亚洲色图校园春色| 7723日本高清完整版免费| 2020年亚洲天天爽天天噜| 无码免费午夜福利片在线 | 亚洲欧洲日本在线| 中国一级特黄的片子免费 | 成人黄18免费视频| WWW亚洲色大成网络.COM| 亚洲欧洲自拍拍偷精品 美利坚| CAOPORN国产精品免费视频| 久久精品国产亚洲夜色AV网站| 69视频在线观看免费| 亚洲欧美aⅴ在线资源| 免费久久精品国产片香蕉| 永久免费AV无码网站国产| 亚洲综合一区二区精品导航 | 羞羞视频在线观看免费| 久久精品国产精品亚洲艾草网| 日韩不卡免费视频| 黄页免费视频播放在线播放| 中文字幕人成人乱码亚洲电影| 99久久免费观看| 亚洲一区二区三区自拍公司| 久爱免费观看在线网站| 亚洲中文字幕久久精品无码A | 激情吃奶吻胸免费视频xxxx| 久久久无码精品亚洲日韩蜜桃 | 免费精品国产自产拍在| 在线看片免费不卡人成视频|