-
Notifications
You must be signed in to change notification settings - Fork 146
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
memory leak #30
Comments
This should work. |
Hmm, is there any destructor in the VolumeGVDB class that deallocate the following members (allocated in VolumeGVDB::Initialize)?
These are the ones for which I can't find any deallocation code and that I can (without a 100% certainty) relate to the trace given by a Additionnaly there is no member method of VolumeGVDB that release the memory allocated by mPool. I have to do something like (not sure what is absolutely necessary or not though): gvdb->DestroyChannels();
gvdb->CleanAux();
gvdb->mPool->PoolReleaseAll();
gvdb->Clear(); But it doesn't solve the leak from the above-mentioned members. |
Hi all, I finally implemented destructors for most of the main GVDB classes in cpmmits dc4d3a0 and f0d05bb. This makes it so that In addition, Please let me know if this significantly breaks things, since it also slightly changes the semantics of setting the scene's camera and light objects (these functions now own the pointers that you pass to them), and could cause problems with applications that shared pointers to the same object across multiple volumes. Hope this helps! |
Closing, since this seems to have been fixed by the commit described in the last post. |
I try to contruct and destroy a nvdb::VolumeGVDB multiple times. I monitor a memory leak. This simple code illustrates the leak.
while (1) { nvdb::VolumeGVDB gvdb; gvdb.SetCudaDevice(GVDB_DEV_FIRST); gvdb.Initialize(); }
Is there a function to free the VolumeGVDB or is this pattern not permitted in gvdb ?
The text was updated successfully, but these errors were encountered: