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

隨筆-80  評論-22  文章-0  trackbacks-0

臨界區(criticalSection)

又稱阻塞,它能夠使一段代碼只由一個線程來執行,其它線程被擋在這段代碼之外,直到第一個線程執行完代碼。臨界區的使用主要涉及如下API函數:
initializeCriticalSection(), 在臨界區首次使用之前,用此函數進行初始化。
deleteCreticalSection(), 在臨界區不再使用之前,用此函數釋放臨界區。
enterCriticalSection(), 在初始化之后,用此函數進入阻塞。
leaveCriticalSection(), 在代碼執行完之后,用此函數解除阻塞。

互斥(mutex)

互斥比較類似阻塞,關鍵在于互斥可以跨進程的線程同步,很多只允許應用程序運行一次的實例就是用互斥方法來實現的。互斥用到以下的API函數:
createMutex(), 創建互斥對象。
releaseMutex(), 解除互斥關系。

互斥的一般使用流程:
首先createMutex創建互斥對象,然后waitForSingleObject進入互斥環境,當用到同步的代碼執行完成后,用releaseMutex解除互斥關系,當所有線程訪問完后,調用
closeHandle方法釋放互斥對象。

waitForSingleObject()函數來防止其它線程進入同步區域的代碼。
function waitforsingleobject(hHandle: Thandle; dwMilliseconds: DWORD):   DWORD; stdcall;
這個函數可以使當前線程在dwmilliseconds指定的時間內睡眠,直到hHandle參數指定的對象進入發信號狀態為止。一個互斥對象不再被線程擁有時,它就進入發信號狀態
當一個進程要終止時,它就進入發信號狀態。dwmilliseconds參數可以設為0,這意味著只檢查hhandle參數指定的對象是否處理發信號狀態,而后立即返回。dwmilliseconds參數設為INFINITE,表示如果信號不出現將一直等下去。

waitForSingeObject()使用的返回值及其含義:
WAIT ABANDONED
指定的對象是互斥對象,并且擁有這個互斥對象的線程在沒有釋放此對象之前就已終止。此時就稱互斥對象被拋棄。這種情況下,這個互斥對象歸當前線程所有,并把它設為不發信號狀態。
WAIT OBJECT 0
指定的對象處于發信號狀態
WAIT TIMEOUT
等待的時間已過,對象仍然是非發信號狀態

當一個互斥對象不再被一個線程所擁有,它就處于發信號狀態。此時首先調用waitForsingleobject()的線程就成為該互斥對象的擁有者,此互斥對象設為不發信號狀態。當線程調用releaseMutex()并傳遞一個互斥對象的句柄作為參數時,這種擁有關系就被解除,互斥對象重新進入發信號狀態。除waitforsingleobject()外,還可以使用waitformultipleobject()和msgwaitformultipleobject(),它們可以等待幾個對象變為發信號狀態。

信號量(semaphore)

另一種使線程同步的技術是使用信號量對象。它是在互斥的基礎上建立的。但信號量增加了資源計數的功能,預定數目的線程允許同時進入要同步的代碼。用
createSemaphore()來創建一個信號量對象,其聲明如下:

function createsemaphore(lpSemaphoreAttributes: pSecurityAttributes;

lInitalCount, lMaximunCount: longint; lpName: pchar): Thandle; stdcall;

和createmutex()一樣,createsemaphore()的第一個參數也是一個指向TsecurityAttributes記錄的指針,此參數的缺少值可以設為nil。lInitialcount參數用來指定個信號量的初始計數
值,這個值必須在0和lMaximumcount之間。此參數大于0 ,就表示信號量處于發信號狀態。當調用waitforsingleobject()時,此計數值就減1。當調用releasesemaphore()時,此計數值加1。參數lMaximumcount指定計數值的最大值。如果這個信號量代表某種資源,那么這個值代表可用資源總數。參數lpName用于給出信號量對象的名稱。類似于createmutex()的lpName參數。

releaseSemaphore()的聲明:

function releaseSemaphore(hsemaphore: Thandle; lreleasecount: longint;
lppreviouscount: pointer): bool; stdcall;

ireleasecount參數用于指定每次使計數值加多少。如果參數lppreviouscount不為nil,原有的計數值將存儲在lppreviouscount里。信號量對象并不屬于某個線程。記住,最后一定要調用colsehandle()來釋放由createsemaphore()創建的信號量對象的句柄。

posted on 2009-08-19 09:37 Bluesea 閱讀(1285) 評論(0)  編輯 收藏 引用 所屬分類: C/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>
            国产精品成人午夜| 欧美伊人久久久久久久久影院 | 亚洲自拍偷拍色片视频| 亚洲高清久久| 麻豆国产va免费精品高清在线| 国产乱码精品一区二区三区av | 久久免费视频网站| 亚洲国产日韩美| 欧美刺激性大交免费视频| 久久精品视频在线播放| 狠狠色噜噜狠狠色综合久| 亚洲——在线| 欧美国产乱视频| 久久久亚洲影院你懂的| 久久综合久久久久88| 99国产一区| 亚洲国产日韩在线| 亚洲美女在线视频| 欧美日韩裸体免费视频| 狠狠入ady亚洲精品| 日韩视频第一页| 欧美伊人影院| 又紧又大又爽精品一区二区| 亚洲一级黄色| 国产在线观看91精品一区| 亚洲一区二区三区在线观看视频| 欧美一区国产一区| 欧美国产精品劲爆| 亚洲国产美女| 欧美精品一区二区三区一线天视频 | 欧美高清hd18日本| 亚洲国产99精品国自产| 在线综合亚洲| 国产精品入口尤物| 欧美成人中文字幕| 欧美日韩亚洲成人| 亚洲作爱视频| 欧美日本精品一区二区三区| 亚洲视频在线视频| 欧美/亚洲一区| 一本综合精品| 欧美成人一区二区三区在线观看| 一区二区三区视频观看| 亚洲第一福利在线观看| 欧美日韩综合| 免费成人av资源网| 欧美日本簧片| 久久久久久91香蕉国产| 欧美国产日韩在线| 久久午夜电影网| 久久久久欧美精品| 亚洲国产精品第一区二区三区 | 99精品国产高清一区二区| 91久久精品日日躁夜夜躁欧美 | 欧美顶级大胆免费视频| 亚洲免费影院| 欧美成人网在线| 亚洲精品偷拍| 在线精品亚洲| 亚洲精品久久久久久久久久久久 | 亚洲欧美久久| 中文在线资源观看网站视频免费不卡 | 亚洲国产精品va在看黑人| 久久不射2019中文字幕| 亚洲激情亚洲| 狠狠色丁香久久综合频道| 亚洲免费精品| 国产日韩欧美在线观看| 欧美~级网站不卡| 亚洲动漫精品| 一区二区三区www| 欧美日韩一区二区免费视频| 99视频精品在线| 久久激五月天综合精品| 18成人免费观看视频| 欧美日韩系列| 欧美在线播放高清精品| 亚洲男人的天堂在线aⅴ视频| 国产欧美一区二区三区久久| 亚洲一区网站| 乱中年女人伦av一区二区| 亚洲视频电影图片偷拍一区| 国产午夜精品麻豆| 午夜日韩福利| 亚洲国产综合在线看不卡| 亚洲高清免费| 欧美高清在线精品一区| 欧美成人精品高清在线播放| 久久久久国产成人精品亚洲午夜| 久久亚洲精品视频| 久久久综合网| 亚洲精品美女在线| 亚洲永久免费视频| 欧美人成在线| 一区二区精品| 亚洲欧美日韩区| 亚洲国产成人精品久久| 国产日韩欧美日韩大片| 欧美激情免费观看| 午夜精品久久| 国产精品va在线播放| 日韩午夜免费| 亚洲精品久久久久中文字幕欢迎你 | 国产欧美日韩精品一区| 激情另类综合| 欧美激情一区二区三区| 欧美喷潮久久久xxxxx| 一本色道久久综合狠狠躁篇的优点 | aa国产精品| 欧美日韩中文字幕精品| 一区二区欧美亚洲| 小处雏高清一区二区三区 | 亚洲欧美日韩国产中文在线| 国产欧美日韩视频一区二区三区| 久久字幕精品一区| 欧美日韩精品免费观看视频完整| 欧美在线视频免费播放| 欧美日韩国产探花| 久久免费国产精品1| 国产精品美女在线| 亚洲国产成人不卡| 国产精品专区h在线观看| 欧美粗暴jizz性欧美20| 国产一区二区高清| 一二三区精品| 一区二区动漫| 免费黄网站欧美| 久久天堂精品| 国内成+人亚洲| 午夜精品999| 亚洲免费在线视频一区 二区| 日韩视频在线免费观看| 亚洲精品一品区二品区三品区| 久久成人综合网| 久久久久久久久久久一区| 国产精品二区二区三区| 亚洲精品免费在线| 99re6这里只有精品| 欧美精品v日韩精品v国产精品| 欧美成人免费在线视频| 国产一区视频网站| 久久精品综合网| 久久综合99re88久久爱| 激情丁香综合| 免费看亚洲片| 亚洲免费成人av| 亚洲专区免费| 国产区日韩欧美| 久久久精品一区| 亚洲片在线资源| 午夜国产精品影院在线观看| 国产麻豆91精品| 久久久av毛片精品| 日韩视频免费在线| 久久免费精品视频| 亚洲一区精品视频| 在线看国产一区| 欧美天天在线| 另类图片综合电影| 亚洲小少妇裸体bbw| 亚洲国内精品| 久热精品在线| 中文av一区二区| 伊人狠狠色j香婷婷综合| 欧美日韩三级在线| 久久免费视频网| 亚洲综合三区| 一本久道综合久久精品| 欧美r片在线| 玖玖玖国产精品| 欧美久久成人| 久久久久久日产精品| 亚洲欧美另类国产| 99精品视频免费观看视频| 欧美成人精品在线视频| 亚洲欧洲99久久| 午夜精品久久久久久久99热浪潮 | 午夜精品久久久久影视| 亚洲破处大片| 亚洲无亚洲人成网站77777| 在线精品亚洲| 在线观看中文字幕不卡| 黄色欧美日韩| 影音国产精品| 91久久精品www人人做人人爽| 影音先锋久久久| 亚洲黄色天堂| 亚洲开发第一视频在线播放| 亚洲欧洲三级| 亚洲午夜在线观看| 欧美一区二区三区在线观看| 亚洲欧美日韩综合| 欧美在线国产精品| 久久久久成人精品| 欧美激情视频在线播放| 亚洲欧洲另类国产综合| 在线亚洲一区观看| 久久久噜噜噜久噜久久 | 免费在线成人av| 91久久黄色|