Critical Section Over-Released or Corrupted
Application Verifier stop message
There are four messages associated to the critical section over-released or corrupted. Locks violation detected:
The lock has been over released: Actual lock count <count> – expected <count>
The owner of the lock is invalid, owner <thread ID> was expected
The recursion count is invalid: actual recursion count <count> expected <count>
Thread not supposed to be a owning a lock: number of locks owned is <count>
Probable cause
This stop is generated if a critical section is released more times than the current thread acquired it.
Information displayed by Application Verifier in Tool Window
Lock – Critical section address
Owner - ID of the owning thread
DebugInfo – Critical section debug information address
Description –
The lock has been over released: Actual lock count <count> – expected <count>
The owner of the lock is invalid, owner <thread ID> was expected
The recursion count is invalid: actual recursion count <count> expected <count>
Thread not supposed to be a owning a lock: number of locks owned is <count>
Trace Description: Blank
Additional information
Frequency of this error is high.
See Also
Concepts
Lock Verifier
The Owner of the Lock is Invalid, Owner Was Expected
The Recursion Count is Invalid
Thread Not Supposed To Own a Lock