Udostępnij przez


Odpowiedź serwera na otwarte żądania dotyczące zablokowanych plików

Życie oportunistycznej blokady obejmuje trzy odrębne przedziały czasowe. Podczas każdego z nich serwer określa w inny sposób reakcję na żądanie od klienta w celu otwarcia pliku zablokowanego przez innego klienta. Ogólnie rzecz biorąc, można zminimalizować wpływ aplikacji na innych klientów i wpływ na aplikację, udzielając jak największej ilości udostępniania, żądając niezbędnego minimalnego poziomu dostępu i używając najmniej uciążliwej blokady oportunistycznej odpowiedniej dla aplikacji.

Pierwszy to okres po tym, jak serwer otworzy plik dla klienta, ale przed przyznaniem blokady. W tym czasie nie ma blokady na pliku, a serwer zależy od udostępniania, trybów dostępu i typu oportunistycznej blokady, którą żądasz, aby określić jego reakcję na inne żądanie otwarcia tego samego pliku. Jeśli na przykład otworzysz plik, którego dotyczy dostęp do zapisu, możesz hamować udzielanie oportunistycznych blokad, które umożliwiają dostęp do buforowania odczytu do innych klientów. Przedział czasu przed przyznaniem przez serwer blokady jest zwykle w zakresie milisekund, ale może być dłuższy.

Po udzieleniu oportunistycznej blokady serwer sprawdza blokadę, aby określić reakcję serwera na otwarte żądanie w zablokowanym pliku. Ponownie sposób otwierania pliku przez aplikację i typ blokady ma wpływ na sposób reagowania serwera. Aby uzyskać więcej informacji na temat sposobu reagowania serwera w każdym przypadku, zobacz Typy blokad oportunistycznych.

Na koniec istnieje zakres po tym, jak serwer ustali, że blokada powinna zostać przerwana (zakończona), ale zanim aplikacja zakończy reakcję na przerwę. W zależności od typu blokady aplikacja może obniżyć poziom blokady na niższy lub żaden. Aplikacja może również zamknąć plik i blokadę. W tym czasie serwer przechowuje w abeyance wszelkie żądania od innych klientów, aby otworzyć wcześniej zablokowany plik. Ten przedział czasu może wahać się od milisekund do dziesiątek sekund. Aby uzyskać więcej informacji, zobacz Breaking Opportunistic Locks.