Sto eseguendo il debug del programma C++ compilato con MSVC in Windows. Voglio indagare sul problema legato al multi-threading. Quindi inserisco ASSERT nel mio codice e quando il programma raggiunge ASSERT mostra una finestra su ASSERT (finestra Standart [Abort], [Retry], [Ignore]) con proposta di mettere in pausa il programma nel debugger. Premendo il tasto [Riprova] e programma le pause. MA mentre stavo premendo il tasto, altri thread continuano ad essere eseguiti. Quindi la domanda è come fermare immediatamente il programma quando raggiunge un certo punto per vedere quali altri thread stavano facendo in quel momento?Forza il programma C++ da mettere in pausa nel debugger di Visual Studio
7
A
risposta
2
2
Nel caso in cui si vuole fare a livello di codice, utilizzare DebugBreak. (C# ha un equivalente api System.Diagnostics.Debugger.Break)
Nel caso in cui si desideri farlo da ide, dallo msdn page è possibile inserire un punto di interruzione (o interrompere tutte le applicazioni, ctrl + alt + B) da visual studio e quindi controllare l'esecuzione del thread usando "freeze" e "disgelo" nella finestra del thread.
Problemi correlati
- 1. Il programma si blocca nel debugger di Visual Studio
- 2. Visualizza array nel debugger di Visual Studio?
- 3. C# Come mettere in pausa un timer?
- 4. Uscire da un ciclo nel debugger di Visual Studio
- 5. Arresta Visual Studio dal programma di chiusura dopo il completamento
- 6. Impossibile mettere in pausa nano nel terminale
- 7. C# Esecuzione programma pausa
- 8. Visual Studio C++ Debugger: nessun dump esadecimale?
- 9. Come guardare gli oggetti Bitmap nel debugger di Visual Studio?
- 10. Modifica DateTime nel debugger di Microsoft Visual Studio
- 11. Debugger Visual Studio 2010 saltato
- 12. Invocazione del debugger da un programma C
- 13. Mettere in pausa un processo?
- 14. Pubblica programma in Visual Studio
- 15. C#: comctl32.dll versione 6 nel debugger
- 16. F5 per eseguire Visual Studio Test debugger
- 17. Come mettere in pausa il tempo nella programmazione iOS
- 18. Visualizzatore del debugger di Visual C++?
- 19. visual studio 2008 pazzo debugger saltando!
- 20. Impossibile eseguire il debug dei file di origine CRT nel debugger di Visual Studio 2013
- 21. Come reindirizzare l'output dal debugger di Visual Studio?
- 22. Visual Studio non sta caricando il mio visualizzatore debugger
- 23. Scopri quanti millisecondi ha eseguito un programma C# nel debugger
- 24. Impossibile mettere in pausa SKEmitterNode in iOS9
- 25. Come determinare in fase di esecuzione quando l'applicazione C++ ha il debugger di Visual Studio collegato?
- 26. Imparare C++ da zero in Visual Studio?
- 27. Gson lento nel debugger di Android Studio
- 28. Visual Studio Debugger non collegato a Unity
- 29. Che cosa significa quando una variabile appare rossa nel debugger C++ di Visual Studio?
- 30. Come mettere in pausa/riprendere AVPlayer precarico
A volte il __debugbreak() intrinseco del compilatore è preferito su DebugBreak (che è un'esportazione kernel32), poiché l'intrinseco è ancora affidabile quando i simboli MS System non vengono caricati nel debugger. –