On Sat, 21 Nov 2009 05:57:48 +0300, Rainer Deyke <[email protected]>
wrote:
dsimcha wrote:
== Quote from Rainer Deyke ([email protected])'s article
Yes, but a moving GC needs to be 100% precise, not 99.99999%.
Not if you allow pinning, which we'd need anyhow for untyped,
conservatively
scanned memory blocks.
If you allow pinning then you no longer get the full benefits of a
moving gc. It would be nice to be able to trade untyped, conservatively
scanned memory blocks for a better gc.
Pinning is a must-have if you want communicate with code written in other
languages (C, for example).
Casting from Object to void* would be forbidden, use void* pinnedAddress =
GC.pin(obj); (or similar) instead.