| Предыдущий | Следующий |
| OR_INVALID_SET | RPC_S_INVALID_ASYNC_HANDLE |
RPC_S_SEND_INCOMPLETE
Операция отправки остановилась до передачи средой выполнения всего сообщения RPC
RPC_S_SEND_INCOMPLETE сообщает о частичном продвижении при отправке буфера запроса RPC. Это не успешная отправка укороченной полезной нагрузки приложения: часть маршализованных данных запроса остаётся неотправленной, поэтому нельзя считать, что удалённая процедура получила полный вызов.
Зафиксируйте последовательность протокола, размеры фрагментов, число переданных и подтверждённых байтов, состояние отмены и ошибку нижележащего транспорта. При использовании каналов или асинхронной передачи убедитесь, что обратные вызовы производителя продолжаются до сообщения среды RPC о завершении и не освобождают буферы слишком рано. Политика повторов приложения должна учитывать, мог ли сервер увидеть частичный запрос или начать обработку.
Что проверить
- Запишите полный маршализованный размер и число оставшихся неотправленных байтов.
- Сохраняйте буферы отправки действительными до завершения операции средой RPC.
- Перед повтором вызовов с неопределённым результатом используйте идемпотентность или идентификаторы запросов.
Ссылки
- Microsoft: асинхронный RPC для больших передач
- Microsoft: этапы отказа вызова RPC
- Microsoft: точки обнаружения ошибок отправки и получения
Нужно найти другой код? Найти другой код состояния или ошибки.