finalizer's not really finalizers? - causing segfaults

Sean Kelly sean at invisibleduck.org
Wed Sep 10 08:12:22 PDT 2008


Alan Knowles wrote:
> I think i nailed it down to one of the destructors calling 
> std.gc.genCollect()
> 
> I'm wondering though why that did not cause a deadlock situation
> 
> genCollect() -> calls the destructor -> destructor calls genCollect() or 
> any other gc related stuff - it's supposed to be caught by the gcLock??


Mutexes in D are recursive.  I don't think this should change, as it 
allows a dtor to allocate memory, for example, which can be useful in 
logging and so on.


Sean



More information about the Digitalmars-d mailing list