![]() |
Boost : |
From: Larry Evans (cppljevans_at_[hidden])
Date: 2007-09-17 08:36:53
On 09/17/07 03:30, Achilleas Margaritis wrote:
> Larry Evans wrote:
>> On 09/16/07 16:56, Achilleas Margaritis wrote:
>>> Dear boost developers,
>>>
>>> You can find a new version of my portable precise C++ garbage collector
>>> in vault/memory.
[snip]
>>>
>>> Is any one interested?
>> How does this collector determine the location of pointers on the stack
>> and within the heap?
>
> An internal bit map is used as a pointer database. Each bit represents
> one pointer location in memory.
>
> When the class gc_ptr<T> is created, the bit that corresponds to the
> pointer's address is set.
What about gc_ptr<T*>? IOW, what if the pointer is actually a pointer
to a c array of T or a std::vector<T> or a pointer to std::list<T>.
OOPS. Just read the cppgc.txt which says:
4) manage arrays of objects
However, I'm still wondering if it cppgc can handle
gc_ptr<std::vector<T> > or pointer to any other std container.
Do you have tests for these cases?
Boost list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk