Skip to content

Conversation

@EgorBo
Copy link
Member

@EgorBo EgorBo commented Aug 3, 2023

It seems that currently we do expose nongc objects to debugger (via EnumerateHeap API - I've checked that locally):
image

but with two issues:

  1. We report them as Gen2 objects
  2. We might report them as "dead" if nobody reference them at the time of memory snapshot, although, in fact, they're always there (immortal).

Presumably, this change requires changes on VS side (and external debuggers if they use this API?)

image

cc @davmason @noahfalk @cshung @hoyosjs

@ghost ghost assigned EgorBo Aug 3, 2023
@ghost
Copy link

ghost commented Aug 3, 2023

Tagging subscribers to this area: @tommcdon
See info in area-owners.md if you want to be subscribed.

Issue Details

It seems that currently we do expose nongc objects to debugger (via EnumerateHeap API - I've checked that locally):
image

but with two issues:

  1. We report them as Gen2 objects
  2. We might report them as "dead" if nobody reference them at the time of memory snapshot, although, in fact, they're always there (immortal).

Presumably, this change requires changes on VS side (and external debuggers if they use this API?)

image

cc @davmason @noahfalk @cshung @hoyosjs

Author: EgorBo
Assignees: EgorBo
Labels:

area-Diagnostics-coreclr

Milestone: -

@noahfalk
Copy link
Member

noahfalk commented Aug 4, 2023

For the VS UI it would be more accurate if VS replaced the word "Generations:" with a different term like "Heaps", "Heap Regions", or "Categories". Its in the grey area to call POH or LOH a generation, but hopefully we can avoid implying that NonGC is a generation.

@EgorBo EgorBo marked this pull request as ready for review August 4, 2023 21:25
Copy link
Contributor

@davmason davmason left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Egor!

@EgorBo EgorBo merged commit 8df320c into dotnet:main Aug 8, 2023
@EgorBo EgorBo deleted the debugger-foh branch August 8, 2023 08:10
@ghost ghost locked as resolved and limited conversation to collaborators Sep 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants