青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-4  評(píng)論-40  文章-117  trackbacks-0

線程基本概念

1.線程的組成

           (1)線程內(nèi)核對(duì)象:用于管理線程及存儲(chǔ)線程的統(tǒng)計(jì)信息

           (2)線程棧:維護(hù)線程執(zhí)行時(shí)需要的函數(shù)參數(shù)和局部變量?!【€程棧所需的內(nèi)存是從進(jìn)程中分配而得的,其大小默認(rèn)是1M.

               

           每個(gè)線程都有自已獨(dú)立的線程棧。

           進(jìn)程不執(zhí)行任何代碼,所有的代碼都是由線程執(zhí)行的。進(jìn)程相當(dāng)于一個(gè)裝載線程的容器。

          線程共享進(jìn)程的地址空間和數(shù)據(jù),如內(nèi)核對(duì)象句柄(內(nèi)核對(duì)象句柄只能依附于某個(gè)進(jìn)程而不是某個(gè)線程)

 

2.線程函數(shù)原型

            DWORD WINAPI ThreadFunc(PVOID pvParam)

            {

               DWORD dwResult = 0;

               ...

               return(dwResult);

            }

 

            The system allocates memory out of the process' address space for use by the thread's stack.

 

3.終止線程

              1.線程正常退出。系統(tǒng)會(huì)對(duì)線程函數(shù)內(nèi)創(chuàng)建的所有對(duì)象調(diào)用析構(gòu)函數(shù)。

              2.ExitThread(). 線程退出, 系統(tǒng)會(huì)清理線程棧。 但是系統(tǒng)不會(huì)對(duì)線程函數(shù)內(nèi)創(chuàng)建的所有對(duì)象調(diào)用析構(gòu)函數(shù)。

              3.TerminateThread().線程異步退出,系統(tǒng)不清理線程棧。只到擁有該線程的進(jìn)程退出時(shí)才清理線程棧。

               該函數(shù)是個(gè)異步函數(shù),它只會(huì)告訴系統(tǒng)去殺掉某個(gè)線程,但是系統(tǒng)不會(huì)保證當(dāng)該函數(shù)返回時(shí)線程立刻終止。

               因此我們?nèi)绻覀円_認(rèn)線程已經(jīng)終止了,則需要用WaitForSingleObject()來(lái)等待線程結(jié)束。             

              4.內(nèi)核對(duì)象由進(jìn)程所擁有,用戶對(duì)象由線程擁有。線程可擁有兩種用戶對(duì)象:WindowsHook.

              5.線程終止后,線程所擁有的用戶對(duì)象會(huì)被系統(tǒng)釋放。

             6.GetExitCodeThread() //檢查線程是否已終止

 

4.線程內(nèi)部細(xì)節(jié)

1.CreateThread _beginthreadex 區(qū)別:

             

    CreateThread是系統(tǒng)API,_beginthreadexCRT(C Run Time Library 運(yùn)行時(shí)庫(kù))函數(shù).     _beginthreadex內(nèi)部會(huì)調(diào)用CreateThread函數(shù)。 

     _endthreadex會(huì)釋放_beginthreadextiddata結(jié)構(gòu)分配的內(nèi)存。

 

    如果線程函數(shù)中調(diào)用了CRT函數(shù)(注:不是全部CRT函數(shù) 只是其中一部分函數(shù)),則該線程函數(shù)必須_beginthreadex而不是CreateThread函數(shù)創(chuàng)建。否則會(huì)產(chǎn)生內(nèi)存泄露。

    如果在除主線程之外的任何線程中進(jìn)行一下操作,你就應(yīng)該使用多線程版本的C runtime library,并使_beginthreadex_endthreadex

              (1) 使用malloc()free(),或是newdelete

              (2) 使用stdio.hio.h里面聲明的任何函數(shù)

              (3) 使用浮點(diǎn)變量或浮點(diǎn)運(yùn)算函數(shù)

              (4) 調(diào)用任何一個(gè)使用了靜態(tài)緩沖區(qū)的runtime函數(shù),比如:asctime(),strtok()rand()

 

2._beginthreadex_beginthread區(qū)別

 

    _beginthreadex內(nèi)部會(huì)自動(dòng)調(diào)用 _endthreadex.

    _beginthread內(nèi)部會(huì)自動(dòng)調(diào)用_endthread.

             

    _endthread內(nèi)部會(huì)自動(dòng)調(diào)用CloseHandle關(guān)閉當(dāng)前Thread內(nèi)核對(duì)象的句柄,所以在用_beginthread 時(shí)我們不需要在主線程中調(diào)用CloseHandle來(lái)關(guān)閉子線程的句柄。 

   _endthreadex相比_endthread而言更安全。它不會(huì)自動(dòng)關(guān)閉當(dāng)前Thread內(nèi)核對(duì)象的句柄。所以在用_beginthreadex時(shí)我們需要用CloseHandle來(lái)關(guān)閉子線程的句柄。

 

5.偽句柄和真實(shí)句柄

 

1.偽句柄(Pseudohandle):

 

                HANDLE GetCurrentProcess();

                HANDLE GetCurrentThread();                               

               

以上兩個(gè)函數(shù)會(huì)返回指向線程或進(jìn)程內(nèi)核對(duì)象的偽句柄(其實(shí)以上兩個(gè)函數(shù)返回的是一個(gè)常數(shù)-1)。所以偽句柄的值永遠(yuǎn)是指向當(dāng)前線程或進(jìn)程的。 

如果把該值傳給子進(jìn)程,該值則代表當(dāng)前子進(jìn)程的偽句柄。所以把句柄傳給子線程時(shí)一定要傳真時(shí)的句柄不能傳偽句柄。 

該句柄不會(huì)增加內(nèi)核對(duì)象的引用計(jì)數(shù),所以不需要調(diào)用CloseHandle()函數(shù)。

                               

  2.把偽句柄轉(zhuǎn)換成真實(shí)句柄

 

DuplicateHandle會(huì)增加內(nèi)核對(duì)象的引用計(jì)數(shù),所以要用CloseHandle()來(lái)關(guān)閉復(fù)制所得的對(duì)象句柄。

               

6.Common API

 

                DWORD GetCurrentProcessId();

                DWORD GetCurrentThreadId();

                HANDLE GetCurrentProcess();

                HANDLE GetCurrentThread();

                     DuplicateHandle()

posted on 2010-04-20 18:12 李陽(yáng) 閱讀(1355) 評(píng)論(0)  編輯 收藏 引用 所屬分類: C++
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            91久久久一线二线三线品牌| 日韩视频免费观看| 久久久久国色av免费看影院 | 香蕉久久久久久久av网站| 一本色道**综合亚洲精品蜜桃冫 | 国产欧美一区视频| 国产美女精品| 伊人久久久大香线蕉综合直播| 一区在线观看| 日韩亚洲在线观看| 欧美一区二视频| 欧美成人中文字幕| 99精品欧美一区二区三区综合在线| 亚洲视频综合| 久久九九国产精品| 欧美日韩一区二区在线观看 | 国产亚洲欧美一区| 亚洲激情在线观看| 亚洲曰本av电影| 久久综合九色欧美综合狠狠| 亚洲国产视频一区二区| 性做久久久久久久久| 免费观看日韩av| 国产日韩欧美精品在线| 亚洲九九爱视频| 久久婷婷蜜乳一本欲蜜臀| 亚洲精品视频一区二区三区| 欧美中文字幕精品| 欧美屁股在线| 在线观看欧美黄色| 性18欧美另类| 99在线观看免费视频精品观看| 欧美一区=区| 欧美视频一区在线| 亚洲人成网站色ww在线| 久久精品国产久精国产一老狼| 亚洲精品国产精品乱码不99按摩 | 欧美日韩一区三区四区| 伊人伊人伊人久久| 欧美一区二区三区婷婷月色| 亚洲精品一区二区三区不| 久久久久欧美精品| 国产一区二区三区直播精品电影| 亚洲小视频在线观看| 亚洲激情婷婷| 欧美成人小视频| 亚洲二区在线视频| 久久嫩草精品久久久精品一| 亚洲欧美高清| 国产视频精品网| 亚洲欧美一区二区三区极速播放| 亚洲精品欧美日韩| 欧美日韩一区二区三区视频 | 亚洲一区www| 一本久久综合亚洲鲁鲁| 欧美日本精品| 亚洲久久成人| 91久久在线播放| 蘑菇福利视频一区播放| 亚洲精品国久久99热| 亚洲国产精品精华液2区45| 免费日韩视频| 中文日韩在线视频| 亚洲最新视频在线| 欧美午夜女人视频在线| 亚洲欧美精品在线| 亚洲亚洲精品三区日韩精品在线视频 | 久久精品国产2020观看福利| 国产亚洲欧美一级| 免费观看久久久4p| 免费日韩成人| 亚洲深夜影院| 午夜精品久久久久久久| 国内精品美女av在线播放| 欧美成人精品一区二区三区| 免费欧美在线视频| 亚洲婷婷免费| 久久国内精品自在自线400部| 韩国精品久久久999| 欧美成在线观看| 欧美日韩一区二区免费在线观看| 午夜在线播放视频欧美| 久久久久国产精品人| 日韩亚洲欧美一区| 亚洲免费伊人电影在线观看av| 国产日韩亚洲欧美综合| 久久全球大尺度高清视频| 欧美aⅴ一区二区三区视频| 在线亚洲自拍| 久久成人国产精品| 日韩午夜电影av| 欧美一区二区视频在线观看2020| 亚洲欧洲精品一区| 亚洲欧美中文日韩v在线观看| 亚洲国产日韩一区| 亚洲欧美日韩精品久久亚洲区 | 欧美激情亚洲国产| 欧美一区二区三区在| 免费永久网站黄欧美| 午夜精品久久久久99热蜜桃导演| 久久人人97超碰国产公开结果| 亚洲一本大道在线| 久久美女性网| 午夜亚洲精品| 欧美精品一区二区三区高清aⅴ| 亚洲欧美日韩天堂| 欧美国内亚洲| 欧美sm视频| 国内精品嫩模av私拍在线观看| 一本色道久久综合亚洲精品不| 黄色一区二区三区四区| 亚洲午夜电影在线观看| 日韩一级不卡| 欧美刺激性大交免费视频| 久久国产精品久久久久久电车| 欧美人与性动交cc0o| 久久亚洲二区| 国产综合一区二区| 亚洲女爱视频在线| 亚洲网在线观看| 欧美经典一区二区| 欧美成人午夜剧场免费观看| 好看的日韩视频| 欧美一站二站| 久久青青草综合| 国产视频精品免费播放| 亚洲永久免费| 亚洲欧美一级二级三级| 国产精品久久福利| 一本色道久久综合亚洲91| 一本色道久久综合精品竹菊| 欧美肥婆在线| 亚洲精品一区二区三区99| 日韩午夜av| 欧美日韩一区二区三区在线看| 日韩午夜一区| 亚洲欧美亚洲| 国产午夜精品在线| 久久精品成人欧美大片古装| 蜜臀av在线播放一区二区三区| 好吊日精品视频| 免费欧美高清视频| 亚洲精品国产精品国自产观看浪潮| 亚洲精品久久久久久久久久久| 另类酷文…触手系列精品集v1小说| 免费欧美网站| 亚洲伦理在线| 国产精品啊v在线| 亚洲欧美视频在线| 麻豆精品传媒视频| 亚洲免费观看| 国产精品一卡二| 久久久精品五月天| 欧美大片免费观看| 日韩午夜黄色| 国产美女精品一区二区三区| 久久精品亚洲精品| 亚洲激情午夜| 欧美一区二区久久久| 激情久久久久久久久久久久久久久久| 久久三级福利| 亚洲九九精品| 久久久噜噜噜久久| 99精品国产在热久久婷婷| 欧美亚洲成人免费| 久久亚洲视频| 亚洲一区二区三区乱码aⅴ| 欧美mv日韩mv国产网站app| 亚洲一区二区免费在线| 国产一区二区剧情av在线| 欧美成人精品不卡视频在线观看| 亚洲青色在线| 久久久999| 亚洲综合日韩在线| 亚洲高清中文字幕| 国产精品久久国产精麻豆99网站| 久久九九精品99国产精品| 99国产精品99久久久久久粉嫩| 久久精品色图| 亚洲午夜久久久久久尤物| 尹人成人综合网| 国产精品久久久久久久午夜| 老司机一区二区| 亚洲欧美精品| 日韩午夜激情| 亚洲高清资源综合久久精品| 久久福利精品| 亚洲欧美中文另类| 在线亚洲+欧美+日本专区| 亚洲国产免费看| 国产综合色在线视频区| 国产精品美女久久久| 欧美日本韩国一区| 免费影视亚洲| 久久久久www| 欧美中文字幕在线视频| 亚洲在线免费观看| 在线视频欧美日韩精品| 亚洲精品视频在线| 亚洲国产欧美一区|