Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@DavidKarlas
Copy link
Contributor

@DavidKarlas DavidKarlas commented Nov 24, 2017

This PR can be ignored, it's copy of #5710 with Fixed build(I didn't push to original PR because I'm not sure this is correct way to fix it)
I need it to get .pkg file

kumpera and others added 9 commits July 17, 2017 16:22
This change re-implement GC roots reporting in a way that allows users to correctly track the source of a GC root.

The new design is based on emitting GC root information upfront and only report addresses during heap dumps.

When a GC root is registered we emit an event that is an address range, the root kind, a key and a text description.

A decoder can use this information to match a reported root address with all registration addresses to figure out what they mean.

A GC Root key is used to further its meaning. For example, if kind is thread, key is a tid, if kind is static variables, key is the class pointer and so on.

The build of the change is introducing this key argument across all root registration code and rework our root reporting code to encode their addresses.

Some roots use pseudo-addresses when they are not registrable. This is the case of thread stacks/registers and the finalizer queue.

Finally, root reporting was changed to happen only once per collection and at the end, leading to correct and useful data being produced.
@DavidKarlas
Copy link
Contributor Author

@monojenkins build pkg

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

Successfully merging this pull request may close these issues.

3 participants