Multithreaded access in a heap created with HEAP_NO_SERIALIZE |
Application Verifier break message
Multithreaded access in a heap created with HEAP_NO_SERIALIZE: thread <thread ID> is in a running state conflicting with thread <thread ID>.
Probable cause
A heap created with HEAP_NO_SERIALIZE flag is not supposed to be accessed simultaneously from two threads. The typical way this situation creeps into a program is by linking with a single-threaded version of the C runtime. Visual C++ can for instance link statically such a library when proper flags are used. The bug is very difficult to debug in real life because it will show up as mysterious data corruptions.
Information displayed by Application Verifier
Parameter1 - Heap in which operation happens
Parameter2 - Thread ID for current owner of the heap critical section
Parameter3 - Thread ID of current thread trying to enter
Parameter4 - Not Used
Description - Multithreaded access in a heap created with HEAP_NO_SERIALIZE: thread 0xae8 is in a running state conflicting with thread 0xac8
Additional information
Verifier stop code 0003.
Frequency of this error is low.