共用方式為


C28113

警告 C28113: 透過連鎖的函式存取區域變數。

驅動程式使用 Interlocked 管理支援的常式,例如 InterlockedDecrement,存取本機變數。

雖然驅動程式允許透過區域變數位址至另一個函式,然後使用連鎖的函式操作該變數,確認堆疊將不會未預期地交換至磁碟是很重要,並而變數它的所有執行緒的存留時間是正確的。

範例

一般而言,一連鎖的管理支援介面的傳回值用於後續計算,而不是輸入引數。此外,連鎖的常式只受保護的第一個 (最左邊) 引數。依下列方式使用連鎖的常式並不會保護全域的值而且通常不符合目的。

InterlockedExchange(&local, global)

下列表單具有資料的相同角色並可以安全地存取全域變數。

local = InterllockedExchange(&global, global)