| Anterior | Siguiente |
| XACT_E_ISOLATIONLEVEL | XACT_E_NOENLIST |
XACT_E_NOASYNC
Qué significa XACT_E_NOASYNC
XACT_E_NOASYNC corresponde al HRESULT 0x8004D009. Windows lo describe así: «El administrador de transacciones no admite una operación asincrónica para este método.».
Para diagnosticarla conviene pensar en opciones de la transacción: aislamiento, retención, asincronía y límites soportados, no solo en el método que terminó devolviendo el código. En este caso, el método no ofrece finalización asíncrona aunque el caller la haya solicitado.
Qué comprobar
- Captura nivel de aislamiento, isoFlags, retaining flags, timeout, modo síncrono/asíncrono y capacidades anunciadas por el transaction manager en el intento que devuelve
0x8004D009. - Correlaciona eventos de aplicación, MSDTC y resource manager con la misma UOW para no mezclar transacciones concurrentes del mismo proceso.
- Comprueba de forma explícita esta condición: el método no ofrece finalización asíncrona aunque el caller la haya solicitado.
Tratamiento y recuperación
Ajusta la llamada a las capacidades reales del transaction manager y del recurso. No ocultes un flag no soportado sustituyéndolo silenciosamente: registra la semántica elegida y valida que aislamiento, timeout y retaining cumplen el contrato de la aplicación.
Diferencias con resultados cercanos
Repite el escenario con correlación completa y confirma que la transición que originaba el código ya no aparece; no basta con que el caller deje de mostrar el HRESULT.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.