[vtkusers] Delete problems

Mathieu Malaterre mathieu.malaterre at kitware.com
Fri Jul 14 15:34:28 EDT 2006


Dominik,

	Another approach (if you are using VTK 5) is the use of 
vtkSmartPointer. You don't need to call Delete, it is done for you.

HTH
Mathieu

David Cole wrote:
> Any "New" calls should have corresponding "Delete" calls. Any "Register" 
> calls should have corresponding "UnRegister" calls. And any reference 
> loops need to be broken by setting one of the pointer variables involved 
> to NULL or 0.
> 
> Order is largely irrelevant except in the reference loop case. Sometimes 
> it's important to know which part of a reference loop needs to go away 
> first. Perhaps you need to force a bunch of objects to go away before a 
> window is destroyed (for example).
> 
> That's the beauty of reference counted systems: order doesn't matter as 
> much as balance does...
> 
> If you can't figure out where there's a missing Delete or UnRegister 
> call, look for loops in pointer members (does your pipeline have a 
> feedback loop??) It sometimes helps to draw a diagram of the pipeline. 
> Or you could try simplifying it bit by bit and see when the leak goes 
> away... Then start adding things back in until the leak comes back. That 
> should point out where to look in the code...
> 
> 
> Hope this helps,
> David
> 
> 
> Dominik Szczerba wrote:
> 
>> Hi,
>>
>> I have a quite complex pipeline with a few actors and filters. When I 
>> clean up at the end I always get a non-zero reference count somewhere 
>> (using C++). How do I robustly know in which order I should Delete my 
>> components?
>>
>> PS. this is particularly annoying in combination matlab-vtk, as matlab 
>> dies on any of such errors.
>>
>> regards,
>> Dominik
>> _______________________________________________
>> This is the private VTK discussion list. Please keep messages 
>> on-topic. Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
>> Follow this link to subscribe/unsubscribe:
>> http://www.vtk.org/mailman/listinfo/vtkusers
>>
> _______________________________________________
> This is the private VTK discussion list. Please keep messages on-topic. 
> Check the FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
> 




More information about the vtkusers mailing list