$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
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:
>>
>>http://ice.prohosting.com/newfunk/boost/libs/shmem/doc/html/index.html
>>
>>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
>>O(logN).
> 
> [TRUNCATE]
> 
> 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.
Ion