| Previous | Next |
| WINBIO_E_SESSION_HANDLE_CLOSED | WINBIO_E_NO_PREBOOT_IDENTITY |
WINBIO_E_DEADLOCK_DETECTED
WINBIO_E_DEADLOCK_DETECTED is a concurrency-protection result. WBF sessions can deliver asynchronous callbacks while applications also cancel, wait, close sessions, or manage event monitors; invoking a blocking or state-changing API from the wrong callback or lock context can create a cycle the framework refuses to enter.
Capture the calling context, not just the API name
- Log the thread ID and whether the call originates inside a WinBio completion or event callback.
- Record application mutexes held across WinBio calls and whether another thread is waiting for the same session to finish.
- Move lengthy or blocking work out of event callbacks; event-monitor callbacks are delivered serially.
Microsoft warns that event callbacks should not perform time-consuming work and documents WinBioWait as a blocking operation for pending session work. When this HRESULT appears, build a lock/session timeline. Retrying on the same callback stack can reproduce the same dependency cycle and is less useful than identifying cross-thread ownership.
WinBioRegisterEventMonitor · WinBioWait
Looking for a different code? Search another status or error code.
