Sto eseguendo il debug di un'applicazione C ++ multi-thread (nativa) in Visual Studio 2008. In occasioni apparentemente casuali, ricevo un errore "Windows ha attivato un punto di interruzione ..." con una nota che ciò potrebbe essere dovuto a un danneggiamento nel mucchio. Questi errori non sempre arrestano immediatamente l'applicazione, anche se è probabile che si arresti in modo anomalo poco dopo.
Il grosso problema di questi errori è che vengono visualizzati solo dopo che la corruzione ha effettivamente avuto luogo, il che li rende molto difficili da rintracciare ed eseguire il debug, specialmente su un'applicazione multi-thread.
Che tipo di cose possono causare questi errori?
Come eseguo il debug?
Suggerimenti, strumenti, metodi, illuminazioni ... sono i benvenuti.