Can you summarize the following document?
        
  計數訊號量具備兩種操作動作,稱為V(codice_1)與P(codice_2)(即部分參考書常稱的“PV操作”)。V操作會增加訊號標S的數值,P操作會減少它。  運作方式:

  執行緒使用英語:CreateSemaphore或英語:CreateSemaphoreEx函式建立一個英語:semaphore物件。此時可以指定英語:semaphore的當前計數值與計數值上限;也可指定英語:semaphore物件的名字。其他程序中的執行緒可以指出已存在的英語:semaphore物件的名字通過呼叫英語:OpenSemaphore函式開啟它。  如果多個執行緒在等待一個英語:semaphore物件,不保證按照先進先出(英語:FIFO)順序排程這些等待執行緒。外部事件,如核心模式的非同步過程呼叫可改變等待順序。  在英語:semaphore物件為英語:signaled狀態時,等待函式返回會把該英語:semaphore物件計數值減1。函式英語:ReleaseSemaphore把英語:semaphore物件的計數值增加指定的值。任何執行緒,哪怕它沒有等待完成過該英語:semaphore物件,也可以使用英語:ReleaseSemaphore來增加英語:semaphore物件的計數。如果英語:ReleaseSemaphore導致物件計數值超過上限,則該函式呼叫失敗,返回298號錯誤:“英語:Too many posts were made to a semaphore”。  一個執行緒多次等待同一個英語:semaphore物件,每次等待操作完成都會降低英語:semaphore物件計數值(直至計數值為0時該執行緒阻塞)。然而,通過英語:multiple-object等待函式使用一個陣列包含著同一個英語:semaphore物件的多個控制代碼,不能實現對這個英語:semaphore物件計數值的多次下降。  用完英語:semaphore物件後,呼叫英語:CloseHandle函式關閉它。英語:semaphore物件的最後一個控制代碼被關閉後,作業系統會摧毀它。關閉英語:semaphore並不影響它的計數值。因此,關閉英語:semaphore前或者程序終止前,要確保已經正確呼叫過英語:ReleaseSemaphore。否則,掛起等待該英語:semaphore物件的執行緒會永久阻塞或超時返回。
訊號量(英語:semaphore)又稱為訊號標,是一個同步物件,用於保持在0至指定最大值之間的一個計數值。當執行緒完成一次對該英語:semaphore物件的等待(英語:wait)時,該計數值減一;當執行緒完成一次對英語:semaphore物件的釋放(英語:release)時,計數值加一。當計數值為0,則執行緒等待該英語:semaphore物件不再能成功直至該英語:semaphore物件變成英語:signaled狀態。英語:semaphore物件的計數值大於0,為英語:signaled狀態;計數值等於0,為英語:nonsignaled狀態.