3 ms·
The reason is that runtime design forms the constraints of the GC design. Java allows relocating objects, Go does not. Go allows interior pointers, Java does no
by rbranson 3y ago
The reason is that runtime design forms the constraints of the GC design. Java allows relocating objects, Go does not. Go allows interior pointers, Java does not. These decisions have deep impact on GC design. Something this performance critical needs to be tailored to the runtime.
- felixge 3y agoAFAIK Go’s spec allows relocating objects. The door towards a moving GC is kept open.
- _old_dude_ 3y agoThere are so many packages that only work with GODEBUG=cgocheck=0 that practically that door is closed