同步處理的新功能
Windows 包含下列用於同步處理的新程式設計項目。
Windows 8
新函式
-
刪除同步處理屏障。
-
導致呼叫執行緒在同步處理屏障等候,直到執行緒數目上限進入屏障為止。
-
擷取指定時間間隔內指定檔案、具名管道或通訊裝置上重迭作業的結果。 呼叫執行緒可以執行可警示的等候。
-
指定新同步處理屏障的執行緒數目上限和微調計數。
-
等候位於指定位址的值變更。
-
喚醒等候位址值變更的所有線程。
-
喚醒一個正在等候位址值變更的執行緒。
新的 Interlocked 函式
-
在指定的 LONG 值上執行不可部分完成的加法運算。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 LONGLONG 值上執行不可部分完成的加法運算。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 LONG 值上執行不可部分完成的 AND 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 char 值上執行不可部分完成的 AND 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 SHORT 值上執行不可部分完成的 AND 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 LONGLONG 值上執行不可部分完成的 AND 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
測試指定 LONG64 值的指定位,並加以補充。 此作業是不可部分完成的。
-
測試指定 LONG 值的指定位,並將其設定為 0。 作業是不可部分完成的,而且會使用取得記憶體排序語意來執行。
-
測試指定 LONG 值的指定位,並將其設定為 0。 作業是不可部分完成的,而且會使用記憶體釋放語意來執行。
-
測試指定 LONG 值的指定位,並將其設定為 1。 作業是不可部分完成的,而且會使用取得記憶體排序語意來執行。
-
測試指定 LONG 值的指定位,並將其設定為 1。 作業是不可部分完成的,而且會使用釋放記憶體排序語意來執行。
-
在指定的值上執行不可部分完成的比較和交換作業。 函式會根據比較的結果,比較兩個指定的 32 位值,並與另一個 32 位值交換。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的值上執行不可部分完成的比較和交換作業。 函式會根據比較的結果,比較兩個指定的 16 位值,並與另一個 16 位值交換。
-
在指定的值上執行不可部分完成的比較和交換作業。 函式會根據比較的結果,比較兩個指定的 16 位值,並與另一個 16 位值交換。 作業會使用取得記憶體排序語意來執行。
-
在指定的值上執行不可部分完成的比較和交換作業。 函式會根據比較的結果,比較兩個指定的 16 位值,並與另一個 16 位值交換。 交換是使用釋放記憶體排序語意來執行。
-
在指定的值上執行不可部分完成的比較和交換作業。 函式會根據比較的結果,比較兩個指定的 16 位值,並與另一個 16 位值交換。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的值上執行不可部分完成的比較和交換作業。 函式會根據比較的結果,比較兩個指定的 64 位值,並與另一個 64 位值交換。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的值上執行不可部分完成的比較和交換作業。 函式會根據比較的結果,比較兩個指定的 128 位值,並與另一個 128 位值交換。
-
在指定的值上執行不可部分完成的比較和交換作業。 函式會根據比較的結果,比較兩個指定的指標值,並與另一個指標值交換。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
遞減 (減少一個) 指定 32 位變數的值作為不可部分完成的作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
遞減 (會減少一個) 指定 16 位變數的值做為不可部分完成的作業。
-
遞減 (會減少一個) 指定 16 位變數的值做為不可部分完成的作業。 作業會使用取得記憶體排序語意來執行。
-
遞減 (會減少一個) 指定 16 位變數的值做為不可部分完成的作業。 作業會以釋放記憶體排序語意來執行。
-
遞減 (會減少一個) 指定 16 位變數的值做為不可部分完成的作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
遞減 (會減少一個) 指定 64 位變數的值做為不可部分完成的作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
將 64 位變數設定為指定的值做為不可部分完成的作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
將 8 位變數設定為指定的值做為不可部分完成的作業。
-
將 16 位變數設定為指定的值做為不可部分完成的作業。 作業是使用取得記憶體排序語意來執行。
-
將 16 位變數設定為指定的值做為不可部分完成的作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
將 64 位變數設定為指定的值做為不可部分完成的作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
以不可部分完成的方式交換一組位址。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
執行兩個 32 位值的不可部分完成新增。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
執行兩個 64 位值的不可部分完成新增。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
遞增 (增加一個,) 指定之 32 位變數的值做為不可部分完成的作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
遞增 (以一個) 指定之 16 位變數的值做為不可部分完成的作業增加。
-
遞增 (以一個) 指定之 16 位變數的值做為不可部分完成的作業增加。 作業是使用取得記憶體排序語意來執行。
-
遞增 (以一個) 指定之 16 位變數的值做為不可部分完成的作業增加。 作業是使用釋放記憶體排序語意來執行。
-
遞增 (以一個) 指定之 16 位變數的值做為不可部分完成的作業增加。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
遞增 (增加一) 指定 64 位變數的值做為不可部分完成的作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 LONG 值上執行不可部分完成的 OR 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 char 值上執行不可部分完成的 OR 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 SHORT 值上執行不可部分完成的 OR 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 LONGLONG 值上執行不可部分完成的 OR 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
將單一連結清單插入另一個單一連結清單的前端。 多處理器系統上會同步處理清單的存取權。 這個版本的 方法不會使用 __fastcall 呼叫慣例。
-
在指定的 LONG 值上執行不可部分完成的 XOR 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 char 值上執行不可部分完成的 XOR 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 SHORT 值上執行不可部分完成的 XOR 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
-
在指定的 LONGLONG 值上執行不可部分完成的 XOR 作業。 作業會以不可部分完成的方式執行,但不使用記憶體屏障。
Windows 7
新函式
-
啟動指定的可等候計時器,並提供計時器的內容資訊。
-
嘗試以獨佔模式取得精簡讀取器/寫入器 (SRW) 鎖定。 如果呼叫成功,呼叫執行緒會取得鎖定的擁有權。
-
嘗試取得共用模式中 (SRW) 鎖定的讀取器/寫入器。 如果呼叫成功,呼叫執行緒會取得鎖定的擁有權。
新結構
-
包含以 SetWaitableTimerEx啟動之計時器的內容資訊。