Boost logo

Boost :

From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2005-10-28 09:31:32

Daryle Walker(e)k dio:
> On 10/12/05 12:33 PM, "Ion Gaztañaga" <igaztanaga_at_[hidden]> wrote:
>>I've just uploaded a new snapshot of Shmem to Boost Vault/Memory folder.
>>Online documentation, as always, is here:
>>New features:
> [SNIP]
>>-> Improved named object destruction performance with destroy_ptr when
>>using node container based indexes (map_index). Now is O(N) instead of
> Isn't O(N) worse than O(log N)?

Sorry! I meant constant O(1) time to find the node to erase from the
index. When deallocating a named object constructed in shared memory, if
the index is not a node based container (an ordered vector, for example)
you must use the name to find the [name, pointer] entry and erase it
from the index. If using a node container (a map, or hash_map) as index,
an iterator of the named object is never invalidated if other objects
are created, so it's stored in next to object. That way we can erase the
index entry using erase(it) much faster than using erase(key).

Thanks for pointing it out.


Boost list run by bdawes at, gregod at, cpdaniel at, john at