Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Weird lock-ups all over the place, memory usage stable #280

Open
TurkeyMan opened this issue Oct 2, 2024 · 2 comments
Open

Weird lock-ups all over the place, memory usage stable #280

TurkeyMan opened this issue Oct 2, 2024 · 2 comments

Comments

@TurkeyMan
Copy link

Hey again, I'm having constant lockups when I put breakpoints at random places in my program.
Memory usage is stable, so this is different from the other issue.

Visual Studio says Evaluating expression 'varName'... in a dialog box, and it sits there for about 3-4 minutes. Sometimes it does eventually complete, and the program cursor shows at the breakpoint and I can inspect values, other times after that amount of time passes VS makes a ding noise and the debug session terminates dropping me back to the editor, as if it reached some sort of abort condition.

This happens randomly when I place breakpoints are surprise places, but some change I made recently seems to cause it to happen virtually everywhere.
VisualD is virtually unusable recently... I'm terrified that without Rainer at the station then VisualD is basically end-of-life? :/

I wonder what the future looks like?

@TurkeyMan
Copy link
Author

I've narrowed down the scope of the issue; it's related to the "Call __debug[Overview|Expanded|Visualizer]" option in the debug settings... if I disable that option, it's fine.
How can I diagnose more concretely what's gone wrong here?

@rainers
Copy link
Member

rainers commented Oct 4, 2024

Hi. The __debug* methods do some advanced stuff, i.e. swapping the GC to avoid issues with the GC lock if some stopped thread is holding it. What's your "Switch GC" setting regarding the use of this function? The same can happen with C-malloced data due to the lock inside the system heap. Do your __debug-functions use the GC or malloc, for example to return allocated strings?

Calling range methods for nicer display can be pretty slow, do you have that enabled?

You can attach another instance of VS to the locked up instance and try to figure out if it is actually waiting on a lock, from inside your code or in MagoNatCC.dll. If you could create a mini-core-dump with the task manager or process explorer, I can have a look, too, using the debug symbols, or I can also provide the PDB files.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants