O procedimento armazenado sp_getapplock possui os seguintes valores de retorno:
0: o bloqueio foi concedido com êxito de forma síncrona.
1: O bloqueio foi concedido com êxito depois de aguardar o lançamento de outros bloqueios incompatíveis.
-1: A solicitação de bloqueio expirou.
-2: A solicitação de bloqueio foi cancelada.
-3: A solicitação de bloqueio foi escolhida como vítima de impasse.
-999: indica uma validação de parâmetro ou outro erro de chamada.
Estou escrevendo um invólucro para chamar sp_getapplock
nossa camada de acesso a dados e quero saber sob quais circunstâncias -2 podem ser retornadas para que eu possa lançar uma exceção descritiva e útil. É óbvio o que os valores de retorno de -1 e -3 significam e posso criar facilmente condições de teste que fazem com que esses valores sejam retornados. Como eu conseguiria obter um valor de retorno -2?