What does NTSTATUS 0xC000070A (STATUS_THREADPOOL_HANDLE_EXCEPTION) mean?

 
Previous Next
STATUS_HARDWARE_MEMORY_ERROR STATUS_THREADPOOL_SET_EVENT_ON_COMPLETION_FAILED

STATUS_THREADPOOL_HANDLE_EXCEPTION

The thread-pool wait operation failed instead of signaling or timing out

A thread-pool wait normally completes because the handle becomes signaled or the timeout expires. This diagnostic status records a third path: the underlying wait returned an exception or failure. Invalid handle lifetime, closing a handle while it remains registered, or corruption of the wait object can be responsible.

The registered handle must remain valid until the wait is disarmed and outstanding callbacks have completed. Closing it first creates a race because the numeric value can be reused for an unrelated object while the pool still owns a wait registration.

What to inspect

  • Capture the nested status value, wait object address, handle value, callback object, and registration generation.
  • Call SetThreadpoolWait with a null handle to disarm the wait before closing the underlying object.
  • Wait for outstanding callbacks when teardown requires deterministic handle lifetime.
  • Use separate synchronization to prevent rearming a wait concurrently with destruction.

References


Looking for a different code? Search another status or error code.