中斷商機鎖定

中斷商機鎖定是將某個用戶端在檔案上擁有的鎖定降級的程式,讓另一個用戶端可以開啟檔案,且不具商機鎖定。 當另一個用戶端要求開啟作業時,伺服器會延遲開啟的作業,並通知持有不透明鎖定的用戶端。

保留鎖定的用戶端接著會採取適用于鎖定類型的動作,例如放棄讀取緩衝區、關閉檔案等等。 只有在持有商機鎖定的用戶端通知伺服器完成時,伺服器才會開啟要求開啟作業之用戶端的檔案。 不過,當層級 2 鎖定中斷時,伺服器會向用戶端報告它已中斷,但不會等候任何通知,因為沒有快取的資料會排清到伺服器。

在認可任何獨佔鎖定中斷 (篩選準則、層級 1 或批次) 時,中斷鎖定的持有者無法要求另一個獨佔鎖定。 它可以將獨佔鎖定降級為層級 2 鎖定,或完全沒有鎖定。 持有者通常會釋放鎖定,並在檔案即將關閉時關閉檔案。

應用程式會使用與鎖定中斷所在檔案相關聯的HEvent成員,收到通知,指出機會鎖定已中斷。 應用程式也可以使用 GetOverlappedResultHasOverlappedIoCompleted等函式。