This module provides tracking of objects, for the purpose of detecting memory
leaks due to circular references or innappropriate caching schemes.
Object tracking can be enabled on a per object basis. Any objects
thus tracked are remembered until DESTROYed; details of any objects
left are printed out to STDERR at END-time.
use Devel::Leak::Object qw(GLOBAL_bless);
This form overloads <B>blessB> to track construction and destruction of all
objects. As an alternative, by importing bless, you can just track the
objects of the caller code that is doing the use.
If you use GLOBAL_bless to overload the bless function, please note that
it will ONLY apply to bless for modules loaded AFTER Devel::Leak::Object
has enabled the hook.
Any modules already loaded will have already bound to CORE::bless and will
not be impacted.
Setting the global variable $Devel::Leak::Object::TRACKSOURCELINES makes the
report at the end include where (filename and line number) each leaked object
originates (or where call to the ::new is made).
Copyright 2007 - 2010 Adam Kennedy.
Rewritten from original copyright 2004 Ivor Williams.
Some documentation also copyright 2004 Ivor Williams.
This program is free software; you can redistribute
it and/or modify it under the same terms as Perl itself.
The full text of the license can be found in the
LICENSE file included with this module.