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

            我的玻璃盒子

            (轉(zhuǎn)帖)Windows同步API (二)—— Semaphore

            原文鏈接:http://m.shnenglu.com/wangjt/archive/2008/02/01/42362.html

            Semaphore是旗語(yǔ)的意思,在Windows中,Semaphore對(duì)象用來(lái)控制對(duì)資源的并發(fā)訪問(wèn)數(shù)。Semaphore對(duì)象具有一個(gè)計(jì)數(shù)值,當(dāng)值大于0時(shí),Semaphore被置信號(hào),當(dāng)計(jì)數(shù)值等于0時(shí),Semaphore被清除信號(hào)。每次針對(duì)Semaphore的wait functions返回時(shí),計(jì)數(shù)值被減1,調(diào)用ReleaseSemaphore可以將計(jì)數(shù)值增加 lReleaseCount 參數(shù)值指定的值。

            CreateSemaphore函數(shù)用于創(chuàng)建一個(gè)Semaphore

            HANDLE CreateSemaphore(
            LPSECURITY_ATTRIBUTES lpSemaphoreAttributes,
            LONG lInitialCount,
            LONG lMaximumCount,
            LPCTSTR lpName
            );

            lpSemaphoreAttributes為安全屬性,
            lInitialCount為Semaphore的初始值,
            lMaximumCount為最大值,
            lpName為Semaphore對(duì)象的名字,NULL表示創(chuàng)建匿名Semaphore

            此外還可以調(diào)用OpenSemaphore來(lái)打開(kāi)已經(jīng)創(chuàng)建的非匿名Semaphore

            HANDLE OpenSemaphore(
            DWORD dwDesiredAccess,
            BOOL bInheritHandle,
            LPCTSTR lpName
            );

            調(diào)用ReleaseSemaphore增加Semaphore計(jì)算值

            BOOL ReleaseSemaphore(
            HANDLE hSemaphore,
            LONG lReleaseCount,
            LPLONG lpPreviousCount
            );

            lpReleaseCount參數(shù)表示要增加的數(shù)值,
            lpPreviousCount參數(shù)用于返回之前的計(jì)算值,如果不需要可以設(shè)置為NULL

            比如我們要控制到服務(wù)器的連接數(shù)不超過(guò)10個(gè),可以創(chuàng)建一個(gè)Semaphore,初值為10,每當(dāng)要連接到服務(wù)器時(shí),使用WaitForSingleObject請(qǐng)求Semaphore,當(dāng)成功返回后再嘗試連接到服務(wù)器,當(dāng)連接失敗或連接使用完后釋放時(shí),調(diào)用ReleaseSemaphore增加Semaphore計(jì)數(shù)值。

            posted on 2008-02-03 10:45 深藍(lán)色系統(tǒng) 閱讀(726) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Windows開(kāi)發(fā)

            導(dǎo)航

            <2008年2月>
            272829303112
            3456789
            10111213141516
            17181920212223
            2425262728291
            2345678

            統(tǒng)計(jì)

            常用鏈接

            留言簿(75)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            亚洲午夜久久久久久久久久| 久久九九有精品国产23百花影院| 精品久久人妻av中文字幕| 久久婷婷五月综合97色直播| 久久夜色精品国产噜噜亚洲a| 亚洲国产成人久久精品99 | 色诱久久av| 国内精品伊人久久久久影院对白 | 久久久一本精品99久久精品88| 色欲久久久天天天综合网精品| 国产精品久久波多野结衣| 久久久久久一区国产精品| 久久精品国产亚洲AV久| 日本精品久久久中文字幕| 中文字幕精品久久| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久精品中文字幕有码| 久久综合给合久久狠狠狠97色69| 97久久精品人人做人人爽| 99久久99久久精品国产片果冻| 国产精品伊人久久伊人电影 | 国产成人精品久久| 国产麻豆精品久久一二三| 亚洲乱码精品久久久久..| 午夜精品久久久久久| 精品无码人妻久久久久久| 久久综合狠狠色综合伊人| 亚洲中文字幕无码久久2020| 久久性生大片免费观看性| 国产综合成人久久大片91| 久久99精品国产99久久| 亚洲va久久久噜噜噜久久天堂 | 久久被窝电影亚洲爽爽爽| 久久精品国产99久久久古代| 久久无码国产| 麻豆精品久久久久久久99蜜桃| 久久天天躁狠狠躁夜夜av浪潮| 久久免费国产精品| 国产精品久久久久久久久软件 | 午夜精品久久久久久影视777| 色诱久久av|