Что означает код NTSTATUS 0xC0020058 (RPC_NT_NOT_CANCELLED)?

 
Предыдущий Следующий
RPC_NT_SEC_PKG_ERROR RPC_NT_INVALID_ASYNC_HANDLE

RPC_NT_NOT_CANCELLED

Вызов RPC не был отменён

RPC_NT_NOT_CANCELLED относится к средству NTSTATUS среды выполнения Windows RPC. Для RPC_NT_NOT_CANCELLED протокол MS-RPCE расширяет модель DCE/RPC: созданные заглушки маршалируют параметры, среда выполнения привязывается к конечной точке и последовательности протокола, а ошибки безопасности или транспорта могут возвращаться как значения состояния средства RPC.

Этот статус означает, что запрос отмены фактически не отменил операцию RPC. Вызов мог уже завершиться, мог не допускать отмену на этом этапе либо запрос отмены мог относиться к неверному потоку или асинхронному состоянию.

Это результат порядка действий, а не доказательство успеха или сбоя операции на сервере. Для неидемпотентных операций всё равно проверьте окончательное состояние на стороне сервера.

Что проверить для RPC_NT_NOT_CANCELLED

  • Проверьте порядок тайм-аута, отмены, завершения и обратных вызовов очистки.
  • Для асинхронных вызовов убедитесь, что отмена использует правильный асинхронный дескриптор.
  • После неудачной отмены запросите или запишите состояние серверной операции до повторения разрушительной работы.

Ссылки для RPC_NT_NOT_CANCELLED


Нужно найти другой код? Найти другой код состояния или ошибки.