In tree_sample.h at line 27 the destructor is not defined as virtual:
~TreeSampler();
This will prevent the destructors of the child classes, i.e., LockFreeTreeSample and OptimisticTreeSampler, to be called, when they are stored in something such as std::unique_ptr<TreeSampler>. Which I am quite sure that causes memory leaks.
In
tree_sample.h
at line 27 the destructor is not defined as virtual:~TreeSampler();
This will prevent the destructors of the child classes, i.e.,
LockFreeTreeSample
andOptimisticTreeSampler
, to be called, when they are stored in something such asstd::unique_ptr<TreeSampler>
. Which I am quite sure that causes memory leaks.