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

twzheng's cppblog

『站在風口浪尖緊握住鼠標旋轉!』 http://www.cnblogs.com/twzheng

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  136 隨筆 :: 78 文章 :: 353 評論 :: 0 Trackbacks
CreateEvent 函數

函數功能描述:創建或打開一個命名的或無名的事件對象
函數原型:
HANDLE CreateEvent(
  LPSECURITY_ATTRIBUTES lpEventAttributes,   // 安全屬性
  BOOL bManualReset,   // 復位方式
  BOOL bInitialState,   // 初始狀態
  LPCTSTR lpName   // 對象名稱
);

參數:

lpEventAttributes:
      [輸入]一個指向SECURITY_ATTRIBUTES結構的指針,確定返回的句柄是否可被子進程繼承。如果lpEventAttributes是NULL,此句柄不能被繼承。
      Windows NT/2000:lpEventAttributes的結構中的成員為新的事件指定了一個安全符。如果lpEventAttributes是NULL,事件將獲得一個默認的安全符。

bManualReset:
      [輸入]指定將事件對象創建成手動復原還是自動復原。如果是TRUE,那么必須用ResetEvent函數來手工將事件的狀態復原到無信號狀態。如果設置為FALSE,當事件被一個等待線程釋放以后,系統將會自動將事件狀態復原為無信號狀態。

bInitialState:
      [輸入]指定事件對象的初始狀態。如果為TRUE,初始狀態為有信號狀態;否則為無信號狀態。

lpName:
      [輸入]指定事件的對象的名稱,是一個以0結束的字符串指針。名稱的字符格式限定在MAX_PATH之內。名字是對大小寫敏感的。
      如果lpName指定的名字,與一個存在的命名的事件對象的名稱相同,函數將請求EVENT_ALL_ACCESS來訪問存在的對象。這時候,由于bManualReset和bInitialState參數已經在創建事件的進程中設置,這兩個參數將被忽略。如果lpEventAttributes是參數不是NULL,它將確定此句柄是否可以被繼承,但是其安全描述符成員將被忽略。
      如果lpName為NULL,將創建一個無名的事件對象。
      如果lpName的和一個存在的信號、互斥、等待計時器、作業或者是文件映射對象名稱相同,函數將會失敗,在GetLastError函數中將返回ERROR_INVALID_HANDLE。造成這種現象的原因是這些對象共享同一個命名空間。

      終端服務(Terminal Services):名稱中可以加入"Global\"或是"Local\"的前綴,這樣可以明確的將對象創建在全局的或事務的命名空間。名稱的其它部分除了反斜杠(\),可以使用任意字符。詳細內容可參考Kernel Object Name Spaces。
      Windows 2000:在Windows 2000系統中,沒有終端服務運行,"Global\"和"Local\"前綴將被忽略。名稱的其它部分除了反斜杠(\),可以使用任意字符。
      Windows NT 4.0以及早期版本, Windows 95/98:名稱中除了反斜杠(\),可以使用任意字符。

返回值:
       如果函數調用成功,函數返回事件對象的句柄。如果對于命名的對象,在函數調用前已經被創建,函數將返回存在的事件對象的句柄,而且在GetLastError函數中返回ERROR_ALREADY_EXISTS。
      如果函數失敗,函數返回值為NULL,如果需要獲得詳細的錯誤信息,需要調用GetLastError。

備注:
      調用CreateEvent函數返回的句柄,該句柄具有EVENT_ALL_ACCESS權限去訪問新的事件對象,同時它可以在任何有此事件對象句柄的函數中使用。
      在調用的過程中,所有線程都可以在一個等待函數中指定事件對象句柄。當指定的對象的狀態被置為有信號狀態時,單對象等待函數將返回。
      對于多對象等待函數,可以指定為任意或所有指定的對象被置為有信號狀態。當等待函數返回時,等待線程將被釋放去繼續運行。
      初始狀態在bInitialState參數中進行設置。使用SetEvent函數將事件對象的狀態置為有信號狀態。使用ResetEvent函數將事件對象的狀態置為無信號狀態。
      當一個手動復原的事件對象的狀態被置為有信號狀態時,該對象狀態將一直保持有信號狀態,直至明確調用ResetEvent函數將其置為無符號狀態。
      當事件的對象被置為有信號狀態時,任意數量的等待中線程,以及隨后開始等待的線程均會被釋放。
      當一個自動復原的事件對象的狀態被置為有信號狀態時,該對象狀態將一直保持有信號狀態,直至一個等待線程被釋放;系統將自動將此函數置為無符號狀態。如果沒有等待線程正在等待,事件對象的狀態將保持有信號狀態。
      多個進程可持有同一個事件對象的多個句柄,可以通過使用此對象來實現進程間的同步。下面的對象共享機制是可行的:
      ·在CreateEvent函數中,lpEventAttributes參數指定句柄可被繼承時,通過CreateProcess函數創建的子進程繼承的事件對象句柄。
      ·一個進程可以在DuplicateHandle函數中指定事件對象句柄,從而獲得一個復制的句柄,此句柄可以被其它進程使用。
      ·一個進程可以在OpenEvent或CreateEvent函數中指定一個名字,從而獲得一個有名的事件對象句柄。

      使用CloseHandle函數關閉句柄。當進程停止時,系統將自動關閉句柄。當最后一個句柄被關閉后,事件對象將被銷毀。

使用環境:
      Windows NT/2000:需要3.1或更高版本
      Windows 95/98:需要Windows 95或更高版本
      頭文件:定義在Winbase.h;需要包含 Windows.h。
      導入庫:user32.lib
      Unicode:在Windows NT/2000中,以 Unicode 和 ANSI 執行

參考:
      Synchronization Overview, Synchronization Functions, CloseHandle, CreateProcess, DuplicateHandle, OpenEvent, ResetEvent, SECURITY_ATTRIBUTES, SetEvent, Object Names

示例代碼:
      // 創建一個有名的,不能被繼承的,手動復原,初始狀態是無信號狀態的事件對象
      Handle h = CreateEvent(NULL,TRUE,FALSE,“MyEvent”);

posted on 2007-05-05 13:25 譚文政 閱讀(11148) 評論(0)  編輯 收藏 引用 所屬分類: 網絡編程
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美在线视频播放| 欧美人在线观看| 最新69国产成人精品视频免费| 欧美一区二区视频观看视频| 亚洲欧美日韩在线观看a三区| 午夜一区二区三视频在线观看| 欧美在线观看日本一区| 久久国产精品一区二区| 美女诱惑黄网站一区| 亚洲第一伊人| 亚洲一区成人| 蜜桃久久精品一区二区| 欧美色网一区二区| 国产日韩欧美一区| 亚洲麻豆国产自偷在线| 欧美在线1区| 亚洲国产一区在线观看| 亚洲一区免费网站| 免费不卡在线视频| 国产九区一区在线| 亚洲美女电影在线| 久久久国产视频91| 亚洲精品日本| 久久aⅴ国产欧美74aaa| 欧美日韩精品久久| 影音先锋亚洲一区| 欧美亚洲视频| 99国产精品一区| 久久天堂av综合合色| 国产精品久久久久天堂| 亚洲日韩欧美一区二区在线| 午夜亚洲视频| 亚洲乱码精品一二三四区日韩在线 | 亚洲欧美国产毛片在线| 麻豆91精品91久久久的内涵| 99精品欧美一区二区三区| 久久久亚洲人| 国内久久视频| 久久av一区二区三区漫画| 亚洲久久在线| 欧美成人午夜剧场免费观看| 国内精品美女av在线播放| 亚洲图中文字幕| 亚洲激情在线视频| 米奇777超碰欧美日韩亚洲| 国内激情久久| 欧美在线播放一区二区| 99re热这里只有精品视频| 美日韩精品免费观看视频| 精品电影在线观看| 久久久国产精品一区二区中文| 亚洲一区综合| 国产日韩欧美亚洲一区| 久久aⅴ国产欧美74aaa| 一本色道久久综合亚洲精品不| 亚洲三级网站| 国产精品日韩高清| 欧美成年人视频网站| 欧美高清在线精品一区| 一区二区三区国产精华| 亚洲欧美日韩精品久久| 亚洲国产va精品久久久不卡综合| 蜜桃伊人久久| 国产精品av久久久久久麻豆网| 欧美在线高清视频| 欧美精品免费播放| 久久婷婷国产综合国色天香| 欧美电影专区| 欧美中文字幕久久| 欧美久久一区| 亚洲精品1区2区| 亚洲高清自拍| 久久久视频精品| 久久精品伊人| 国产一区二区三区四区五区美女| 亚洲激情综合| 亚洲精品乱码久久久久久日本蜜臀 | 亚洲精品国精品久久99热| 亚洲国产一区在线观看| 国产精品日韩欧美一区二区| 亚洲日本中文字幕区| 亚洲电影免费| 美国成人毛片| 亚洲人成网站色ww在线| 午夜一区不卡| 久久久999精品| 国内视频精品| 久久人人超碰| 夜久久久久久| 久久亚洲春色中文字幕| 亚洲高清久久久| 欧美体内谢she精2性欧美| 亚洲午夜免费福利视频| 久久国产精品亚洲77777| 韩曰欧美视频免费观看| 免费一级欧美在线大片| 夜夜夜精品看看| 欧美成黄导航| 久久精品成人一区二区三区| 亚洲第一成人在线| 欧美午夜国产| 欧美jizz19性欧美| 欧美在线一级视频| 亚洲剧情一区二区| 久久精品视频va| 亚洲欧美日韩精品| 亚洲精品欧美日韩| 韩国一区二区三区美女美女秀| 欧美日韩精品在线播放| 亚洲激情视频在线观看| 久久久精品性| 久久精品久久99精品久久| 亚洲手机视频| 一本到12不卡视频在线dvd| 国内视频一区| 好看的日韩视频| 国产日韩欧美在线看| 国产精品一卡二卡| 国产美女精品一区二区三区 | 欧美成人精品| 久热精品视频在线观看| 久久久噜噜噜久噜久久| 欧美高清免费| 欧美色网一区二区| 国产精品久久久久免费a∨大胸 | 欧美日韩亚洲网| 欧美日韩国产一区| 欧美午夜不卡在线观看免费| 国产精品久久久久999| 国产精品高清网站| 国产在线精品二区| 99视频在线观看一区三区| 亚洲图片激情小说| 亚洲欧美日韩一区在线| 六月天综合网| 亚洲小视频在线观看| 久久国产精品久久国产精品| 久久成人在线| 国产精品啊啊啊| 亚洲国产美国国产综合一区二区| 亚洲日本在线视频观看| 亚洲一区二区三区四区在线观看 | 一区二区三区我不卡| 亚洲免费观看| 欧美成人免费一级人片100| 在线综合亚洲欧美在线视频| 久久精品亚洲精品国产欧美kt∨| 欧美精品二区| 亚洲人成免费| 亚洲激情二区| 欧美成在线视频| 亚洲激情专区| av成人天堂| 理论片一区二区在线| 亚洲欧美日韩视频二区| 99精品国产高清一区二区| 久久婷婷丁香| 久久久久久久久久看片| 国产一区二区精品丝袜| 午夜久久一区| 亚洲第一毛片| 欧美激情久久久久久| 麻豆久久久9性大片| 亚洲国产影院| 日韩特黄影片| 国产伦精品一区二区三区照片91 | 欧美成人按摩| 久久久91精品国产一区二区三区| 国产人成精品一区二区三| 亚洲欧美国产制服动漫| 午夜激情综合网| 亚洲日本在线观看| 一区二区三区四区精品| 国产女主播视频一区二区| 久久综合色影院| 欧美手机在线| 欧美福利视频网站| 国产精品剧情在线亚洲| 美女诱惑一区| 国产日韩欧美不卡| 一本色道久久88综合亚洲精品ⅰ| 国产日韩一区二区三区| 亚洲精品一区中文| 亚洲第一免费播放区| 亚洲欧美日韩一区二区三区在线观看| 韩国欧美国产1区| 一区二区三区色| 日韩一区二区精品视频| 久久久久久高潮国产精品视| 亚洲天堂网站在线观看视频| 毛片av中文字幕一区二区| 亚欧成人在线| 国产色产综合色产在线视频| 99视频有精品| 亚洲深夜福利网站| 欧美色图首页| 欧美一区二区三区久久精品茉莉花| 亚洲视频免费在线观看| 欧美日韩国产综合一区二区| 亚洲韩国青草视频|