• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 132  文章 - 51  trackbacks - 0
            <2012年8月>
            2930311234
            567891011
            12131415161718
            19202122232425
            2627282930311
            2345678

            常用鏈接

            留言簿(7)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            cocos2d-x

            OGRE

            OPenGL

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            一個(gè)進(jìn)程通常定義為程序的一個(gè)實(shí)例。在Win32中, 進(jìn)程占據(jù)4GB的地址空間。與它們?cè)贛S-DOS和16位Windows操作系統(tǒng)中不同, Win32進(jìn)程是沒有活力的。這就是說,一個(gè)Win32進(jìn)程并不執(zhí)行什么指令,它只是占據(jù)著4GB的地址空間,此空間中有應(yīng)用程序EXE文件的 代碼和數(shù)據(jù)。EXE需要的任意DLL也將它們的代碼和數(shù)據(jù)裝入到進(jìn)程的地址空間。除了地址空間,進(jìn)程還占有某些資源,比如文件、動(dòng)態(tài)內(nèi)存分配和線程。當(dāng)進(jìn)程終止時(shí),在它生命期中創(chuàng)建的各種資源將被清除。

              但是進(jìn)程是沒有活力的,它只是一個(gè)靜態(tài)的概念。為了讓進(jìn)程完成一些工作,進(jìn)程必須至少占有一個(gè)線程,所以線程是描述進(jìn)程內(nèi)的執(zhí)行,正是線程負(fù)責(zé)執(zhí)行包含在進(jìn)程的地址空間中的代碼。實(shí)際上,單個(gè)進(jìn)程可以包含幾個(gè)線程, 它們可以同時(shí)執(zhí)行進(jìn)程的地址空間中的代碼。為了做到這一點(diǎn),每個(gè)線程有自己的一組CPU寄存器和堆棧。

              線程是進(jìn)程內(nèi)部的一個(gè)執(zhí)行單元。系統(tǒng)創(chuàng)建好進(jìn)程后,實(shí)際上就啟動(dòng)執(zhí)行了該進(jìn)程的主執(zhí)行線程,主執(zhí)行線程以函數(shù)地址形式,比如說main或WinMain函數(shù),將程序的啟動(dòng)點(diǎn)提供給Windows系統(tǒng)。主執(zhí)行線程終止了,進(jìn)程也就隨之終止。

              每一個(gè)進(jìn)程至少有一個(gè)主執(zhí)行線程,它無需由用戶去主動(dòng)創(chuàng)建,是由系統(tǒng)自動(dòng)創(chuàng)建的。用戶根據(jù)需要在應(yīng)用程序中創(chuàng)建其它線程,多個(gè)線程并發(fā)地運(yùn)行于同一個(gè)進(jìn)程中。一個(gè)進(jìn)程中的所有線程都在該進(jìn)程的虛擬地址空間中,共同使用這些虛擬地址空間、全局變量和系統(tǒng)資源,所以線程間的通訊非常方便,多線程技術(shù)的應(yīng)用也較為廣泛。

              多線程可以實(shí)現(xiàn)并行處理,避免了某項(xiàng)任務(wù)長(zhǎng)時(shí)間占用CPU時(shí)間。要說明的一點(diǎn)是,目前大多數(shù)的計(jì)算機(jī)都是單處理器(CPU)的,為了運(yùn)行所有這些線程,操作系統(tǒng)為每個(gè)獨(dú)立線程安排一些CPU時(shí)間,操作系統(tǒng)以輪換方式向線程提供時(shí)間片,這就給人一種假象,好象這些線程都在同時(shí)運(yùn)行。由此可見,如果兩個(gè)非常活躍的線程為了搶奪對(duì)CPU的控制權(quán),在線程切換時(shí)會(huì)消耗很多的CPU資源,反而會(huì)降低系統(tǒng)的性能。這一點(diǎn)在多線程編程時(shí)應(yīng)該注意。

              現(xiàn)代操作系統(tǒng)大都提供了相應(yīng)的機(jī)制,用來處理線程的生存期、同步,以及其他“和線程有關(guān)”的屬性,如優(yōu)先級(jí)、線程專有存儲(chǔ)空間(thread-specific storage)等。多線程編程是一門語言的難點(diǎn)和重點(diǎn)

            posted on 2011-08-14 12:37 風(fēng)輕云淡 閱讀(431) 評(píng)論(0)  編輯 收藏 引用 所屬分類: C++
            91精品国产综合久久婷婷| 亚洲国产天堂久久综合| 成人国内精品久久久久影院VR| 久久九九久精品国产| 久久精品国产亚洲AV不卡| 国产福利电影一区二区三区,免费久久久久久久精 | 亚洲AV无一区二区三区久久| 国产精品一区二区久久精品| 亚洲?V乱码久久精品蜜桃 | 97精品伊人久久大香线蕉| 国产精品一区二区久久不卡| 欧美久久一级内射wwwwww.| 色妞色综合久久夜夜| 亚洲国产精品无码久久九九 | 五月丁香综合激情六月久久| 91性高湖久久久久| 久久久久亚洲av无码专区导航| 三级片免费观看久久| 一本伊大人香蕉久久网手机| 久久精品中文闷骚内射| 深夜久久AAAAA级毛片免费看| 青青草原1769久久免费播放| 久久综合噜噜激激的五月天| 中文字幕精品久久| 久久无码人妻精品一区二区三区 | 久久久久综合国产欧美一区二区| 久久国产高潮流白浆免费观看| 国内精品伊人久久久影院| 精品人妻伦九区久久AAA片69| 久久91亚洲人成电影网站| 国产精品岛国久久久久| 久久国产欧美日韩精品| 国产成人久久精品一区二区三区| 精品熟女少妇av免费久久| 久久精品国产精品亚洲毛片 | 要久久爱在线免费观看| 国产精品久久久久免费a∨| 波多野结衣久久| 久久久久国产精品熟女影院| 国产精品久久久久AV福利动漫| 国内精品九九久久久精品|