• <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>

            woaidongmao

            文章均收錄自他人博客,但不喜標題前加-[轉貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數據加載中……

            進程結束后,為什么還能獲取它的退出碼?[

            http://topic.csdn.net/u/20080101/14/17ae9cbf-f64f-40bf-86d5-3ff268065711.html

             

            GetExitCodeProcess

             

            因為進程句柄可能還在被別的進程使用(比如創建該進程的進程,或者OpenProcess的進程),雖然目標進程已經退出,但是句柄引用計數不為0,因此進程句柄的某些屬性還保留在系統中,其中包括句柄的狀態處于信號狀態、進程的32位返回值繼續有效。只有當句柄引用計數為0,所有這些跟句柄相關的屬性才會被清理。

             

            GetExitCodePorcess需要進程句柄作為參數,如果沒有句柄怎么去調用?

             

            這個句柄是之前獲取的,然后這個進程退出了...
            會不會是這樣,函數退出返回err,getlasterr,錯誤碼句柄無效?

            只要有進程獲取了目標進程句柄,它的引用計數就會加1,所以即使目標進程退出,它的進程句柄還會繼續有效。你要理解引用計數的含義。

             

            無論你是CreateProcess還是OpenProcess還是DuplicateHandle復制一個句柄,系統內部都會增加引用計數,必須依靠CloseHandle來減少引用計數,只要引用計數不是0,句柄就會一直存在。所以你根本不必擔心進程退出后句柄是否消失,只要你擁有這個句柄,句柄就一定不會消失,因為你增加的引用計數必須要你自己來釋放,別人釋放不了。

            posted on 2011-05-26 16:38 肥仔 閱讀(785) 評論(0)  編輯 收藏 引用 所屬分類: Windows開發

            97久久精品国产精品青草| 久久伊人中文无码| 午夜精品久久久久久久| 久久精品人人做人人爽电影蜜月| 人妻无码αv中文字幕久久| 99久久精品国产免看国产一区| 久久国产视屏| 国产人久久人人人人爽 | 波多野结衣久久精品| 亚洲AV无码久久寂寞少妇| 久久久久亚洲AV成人网人人软件| 亚洲va久久久噜噜噜久久天堂| 狠狠色综合久久久久尤物| 91精品国产91久久综合| 囯产精品久久久久久久久蜜桃| 99久久精品国产一区二区三区 | 欧美日韩成人精品久久久免费看| 久久99精品国产自在现线小黄鸭 | 亚洲国产天堂久久综合| 国产精品无码久久综合| 狠狠色丁香婷婷久久综合| 久久久久国产视频电影| 色综合合久久天天综合绕视看| 一本久久a久久精品亚洲| 亚洲午夜久久久| 久久久久无码国产精品不卡| 91久久成人免费| 青青草原1769久久免费播放| 久久久久久亚洲AV无码专区| 狠狠色狠狠色综合久久| 久久精品免费全国观看国产| 亚洲国产成人久久综合一区77| 久久久久亚洲AV无码专区网站| 久久国产影院| 狠狠色丁香久久婷婷综合蜜芽五月 | 久久中文娱乐网| 日本一区精品久久久久影院| 91精品久久久久久无码| 国产成人精品久久亚洲| 精品久久久久一区二区三区 | 久久久精品人妻无码专区不卡|