Resposta do servidor a solicitações abertas em arquivos bloqueados
A vida de um bloqueio oportunista inclui três intervalos de tempo distintos. Durante cada um, o servidor determina por diferentes meios sua reação a uma solicitação de um cliente para abrir um arquivo bloqueado por outro cliente. Em geral, você pode minimizar o impacto que seu aplicativo tem em outros clientes e o impacto que eles têm em seu aplicativo concedendo o máximo de compartilhamento possível, solicitando o nível de acesso mínimo necessário e usando o bloqueio oportunista menos intrusivo adequado para seu aplicativo.
Primeiro é o período após o servidor abrir um arquivo para um cliente, mas antes de conceder um bloqueio. Durante esse tempo, nenhum bloqueio existe no arquivo e o servidor depende do compartilhamento, dos modos de acesso e do tipo de bloqueio oportunista que você solicita para determinar sua reação a outra solicitação para abrir o mesmo arquivo. Por exemplo, se você abrir o arquivo em questão para acesso de gravação, poderá inibir a concessão de bloqueios oportunistas que permitem acesso de cache de leitura a outros clientes. O intervalo de tempo antes que o servidor conceda um bloqueio normalmente está no intervalo de milissegundos, mas pode ser maior.
Depois que o bloqueio oportunista é concedido, o servidor examina o bloqueio para determinar a reação do servidor a uma solicitação aberta em um arquivo bloqueado. Novamente, como o aplicativo abriu o arquivo e o tipo de bloqueio que ele contém afeta a forma como o servidor responde. Para obter mais informações sobre como o servidor responde em cada caso, consulte Tipos de bloqueios oportunistas.
Por fim, há o intervalo depois que o servidor determina que o bloqueio deve ser interrompido (encerrado), mas antes que seu aplicativo conclua sua reação à quebra. Dependendo do tipo de bloqueio, seu aplicativo pode fazer downgrade do bloqueio para um nível inferior ou para nenhum. Seu aplicativo também pode fechar o arquivo e o bloqueio. Durante esse tempo, o servidor mantém em conformidade todas as solicitações de outros clientes para abrir o arquivo anteriormente bloqueado. Esse intervalo de tempo pode variar de milissegundos a dezenas de segundos. Para obter mais informações, confira Quebra de bloqueios oportunistas.