This doesn't work for me, for some reason. I reserve via GC.reserve(4_000_000_000), ensured that it does return at least that amount, but the Garbage collector will still collect like crazy, long before that reserved memory is exhausted...
That's strange, I must be missing something. Hopefully one of the GC experts can explain why this happens.