• <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)論排行榜

            亚洲欧美一区二区三区久久| 色综合久久88色综合天天| 国产精品美女久久久久网| 国产精品免费福利久久| 国产精品无码久久四虎| 九九久久精品国产| 亚洲伊人久久成综合人影院| 精品一二三区久久aaa片| 亚洲国产精品久久66| 久久久久国产精品嫩草影院| 久久久久国产精品熟女影院| 久久人人超碰精品CAOPOREN| 久久超碰97人人做人人爱| 国产免费久久精品99久久| 波多野结衣久久精品| 久久精品免费大片国产大片 | 亚洲日本va中文字幕久久| 国产精品久久亚洲不卡动漫| 久久久久亚洲精品中文字幕| 久久精品中文騷妇女内射| 亚洲午夜精品久久久久久浪潮| 久久久久久人妻无码| 久久精品日日躁夜夜躁欧美| 国产激情久久久久影院| 99久久免费国产精品热| 国产毛片欧美毛片久久久| 精品久久人人爽天天玩人人妻| 国产精品美女久久久久| 久久精品国产亚洲αv忘忧草| 久久综合成人网| 久久久WWW成人免费精品| 久久午夜电影网| 国产91色综合久久免费| 91精品国产乱码久久久久久 | 亚洲综合久久综合激情久久 | 一本色道久久88精品综合| 久久综合视频网站| 亚洲国产成人乱码精品女人久久久不卡 | 久久精品国产精品亚洲精品| 91精品日韩人妻无码久久不卡| 久久精品国产第一区二区三区|