[erlang-questions] Re: Shared/Hybrid Heap

Tony Arcieri <>
Wed Oct 20 00:29:31 CEST 2010


On Thu, Oct 14, 2010 at 8:47 AM, Nicholas Frechette <>wrote:

> As far as other languages go, yes, most (all?) of them stop all threads to
> garbage collect (if those threads share memory). Java does this, C# does
> this, ruby, python, etc. C# recently or will shortly introduce a garbage
> collection algorithm that runs concurrently and thus doesn't stop all
> threads but from what I can remember, it isn't 100% guaranteed (if threads
> continue to allocate past a threshold, I believe they are still all stopped
> waiting for GC to complete). This an important reason why multi
> generational
> garbage collection algorithms are so popular: it keeps most GC cycles
> quick,
> thus stopping all threads for the least amount of time.


There are many garbage collectors available for Java, and some of them are
completely pauseless, for example the garbage collection used in Azul's Vega
appliances, which is now generally available in the Zing Java VM:

http://www.azulsystems.com/products/zing/virtual-machine

The Sun/Oracle JVM also has some options for concurrent "low pause" garbage
collection.

-- 
Tony Arcieri
Medioh! A Kudelski Brand


More information about the erlang-questions mailing list