Knowing at what point the application freezes

I am developing a multi-threaded WinForm application with C #. Sometimes it happens that my application freezes or freezes or is blocked.

When this happens and I am working in DEBUG mode, is there a way to figure out which line of code my application is currently on? Since it is frozen, I expect to find a point where the application is blocked or blocked or something else. Is it possible to do this?

When it is frozen, I tried to open the CALL STACK window, but this does not display information; are there any actions i can do? Some pause and check, or something else?

+5
source share
3 answers

Threads . Debug- > Break All Threads. , , .

, VS 2010, . VS 2010 Concurrency Profiler Concurrency Profiler . , , , -

, . , ( ). .

+5

Debug "Break All"... .

+2

, ( ). , . .

, "" , .

In both cases, it is assumed that your application is busy (100% CPU usage). If your application, however, is stuck in a deadlock or just waiting for a mutex that will not be marked, you will have to manually re-read the code and try to figure it out yourself.

+2
source

All Articles