HN2new | past | comments | ask | show | jobs | submitlogin

A "free list" is a fairly standard programming pattern, though it's not as common to see now with memory management and GC in most languages. At the base level, all it is is a list of currently "free" (i.e. available) resources that have been pre-allocated.


Sometimes also referred to as an object pool.

What makes this implementation special is that its pooling is both thread-local and global, and is plugged into the runtime/garbage collector. The former makes it much much faster than any pool the user could implement, and the later means is plays nice as resources become more scarce.


> not as common to see now with memory management and GC in most languages

I actually have improved performance of js code significantly using pools to discard/reuse object instances in js.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: