On Mon, Dec 20, 2010 at 6:08 PM, john skaller <skaller@users.sourceforge.net> wrote:

On 21/12/2010, at 9:33 AM, Jim Lloyd wrote:
> Yes, de-allocation is one of the big motivating factors for us, primarily in our long-lived daemon applications.

If you're doing individual de-allocations instead of whole-pool deallocations, why are you using pools?
[I mean why do you want to use pools :]

We're not yet using pools and currently we don't do individual de-allocations. One of our uses of Judy is a symbol table, i.e. a bidirectional mapping between strings and tokens. This table only grows. This is fine in our batch applications but is an issue in our long-lived daemons where it is an apparent slow leak. We can delete the entire table and start fresh but we need a fast way to do this. Even if we could somehow make individual de-allocations fast, I'm concerned about heap fragmentation. A separate pool for the symbol table would address both problems.