3

It seems that there's no interface of read barrier in CoreCLR.

Recently I have implemented a pauseless GC in C. Here's my project: https://github.com/LizBing/Uboa-Garbage-Collector I tried customing a standalone GC library which can be used in .net. As we all know, one of the most important parts of a pauseless GC algorithm is the read barrier. However, I couldn't find any interface I can implement to reach my target. What do you suggest?

Lizbing
  • 31
  • 3

1 Answers1

1

There is none. Standalone GP API in .NET runtime misses some important capabilities, including:

  • API for object scanning (Issue #12809)
  • API for setting up write barrier

And there are no read barriers at all yet so no API here too.

The closest I could get is my https://github.com/kkokosa/UpsilonGC. It's a little outdated but AFAIK "local GC" project is no longer developed since that times neither.

Konrad Kokosa
  • 16,563
  • 2
  • 36
  • 58
  • Thanks! I read your blog and it helps a lot.I wonder is there more detailed information about implementing a standalone GC for .net? – Lizbing Jan 01 '23 at 03:46
  • Unfortunately, the most detailed information I am aware of are... my articles and talks. That's super niche topic :( – Konrad Kokosa Jan 02 '23 at 10:15