Sp_getapplock процедура хранится имеет следующие возвращаемые значения:
0: блокировка была успешно предоставлена синхронно.
1: Блокировка была успешно предоставлена после ожидания освобождения других несовместимых блокировок.
-1: истекло время ожидания запроса на блокировку
-2: запрос на блокировку был отменен.
-3: запрос на блокировку был выбран в качестве жертвы тупика.
-999: указывает на проверку параметра или другую ошибку вызова.
Я пишу оболочку для вызова sp_getapplock
на нашем уровне доступа к данным, и я хочу знать, при каких обстоятельствах можно вернуть -2, чтобы я мог вызвать описательное и полезное исключение. Очевидно, что означают возвращаемые значения -1 и -3, и я легко могу создать условия теста, которые заставят эти значения быть возвращенными. Как бы мне удалось получить возвращаемое значение -2?