Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.544.109 Times


  Date Added: May 11, 2010  |  Visits: 635


Report Broken Link
Printer Friendly Version

Product Homepage
Download (73 downloads)

Devel::Monitor is a Perl module that can monitor your variables/objects for memory leaks. You have memory leaks, and you want to remove it... You can use this tool to help you find which variables/objects that are not destroyed when they should be, and thereafter, you can visualise exactly where is the circular reference for some specific variables/objects. WHAT IT CANT DO Even if your modules are memory leak free, it doesnt mean that external modules that you are using dont have it. So, before running your application on mod_perl, you should be sure that EVERY modules are ok. (In particular those perl extensions calling C++ code) SYNOPSIS use Devel::Monitor qw(:all); #----------------------------------------------------------------------------- # Monitor scalars, arrays, hashes, references, constants #----------------------------------------------------------------------------- my ($a,$b) = (Foo::Bar->new(), Foo::Bar->new()); my ($c, @d, %e); use constant F => [1,2]; monitor(name for a => $a, name for b => $b, name for c => $c, name for d => @d, name for e => %e, name for F => &F); #NOTE : Dont add parentheses to the end of the constant (&F()) #----------------------------------------------------------------------------- # Print circular references #----------------------------------------------------------------------------- # NOTE : You cannot use print_circular_ref on a monitored/tied variable # (See "We cannot use tied objects references because it reuse memory space" doc) print_circular_ref($a); print_circular_ref($b); print_circular_ref($c); print_circular_ref(@d); print_circular_ref(%e); print_circular_ref(&F); #NOTE : Dont add parentheses to the end of the constant (&F()) USAGE : monitor Example with a circular reference +----------------------+ | Code | +----------------------+ { my @a; monitor(a => @a); $a[0] = @a; #Add a circular reference print STDERR "Leaving scopen"; } print STDERR "Scope leftn"; +----------------------+ | Output | +----------------------+ MONITOR ARRAY a Leaving scope Scope left DESTROY ARRAY a +----------------------+ | Meaning | +----------------------+ The line "DESTROY ARRAY a" should be between scope prints. @a were deleted on program exit. Example without a circular reference +----------------------+ | Code | +----------------------+ { my @a; monitor(a => @a); print STDERR "Leaving scopen"; } print STDERR "Scope leftn"; +----------------------+ | Output | +----------------------+ MONITOR ARRAY a Leaving scope DESTROY ARRAY a Scope left +----------------------+ | Meaning | +----------------------+ Everything is ok Now that you know there is a circular reference, you can track it down using the print_circular_ref method.

Requirements: No special requirements
Platforms: Linux
Keyword: Array Circular Circular Reference Destroy Destroy Array Develmonitor For Memory Memory Monitor Perl Module Print Ref Scope Stderr
Users rating: 0/10

License: Freeware Size: 16.38 KB
More Reviews or Write Review

Libraries  -  Variable::Strongly::Typed::Array 1.1.0
Variable::Strongly::Typed::Array is a Perl module for strongly typed array. SYNOPSIS This class is utilized by Variable::Strongly::Typed - you dont access this directly my @array_of_ints :TYPE(int); # Each slot must contain an int my...
10.24 KB  
Communication  -  3D Array Factor of a 4x4 planar array antenna 1.0
3D Array Factor of a 4x4 planar array antenna calculated using general formulas and then plotted in 3D format."AB" shows the excitation amplitude of the elements and "AB_phase" shows their phases.Elements are placed on the x and y axis and element...
10 KB  
Libraries  -  List::Part 0.03
List::Part is a Perl module that allows you to partition one array into several. SYNOPSIS use List::Part; ($good, $bad)=part { !/substring/ } @array; #store arrayrefs into $good and $bad (*good, *bad)=part { !/substring/ } @array; #store...
4.1 KB  
Libraries  -  CIPP 3.0.8
CIPP Perl module contains a Reference Manual to CIPP, the powerful preprocessor language for embedding Perl and SQL in HTML. SYNOPSIS perldoc CIPP::Manual This documentation module is part of the CIPP distribution which is available on CPAN....
143.36 KB  
Libraries  -  Perl6::Parameters 0.03
Perl6::Parameters is a module with Perl 6-style prototypes with named parameters. SYNOPSIS use Perl6::Parameters; sub mysub($foo, ARRAY $bar, *%rest) { ... } DETAILS Perl6::Parameters is a Perl module which simulates Perl 6s named...
4.1 KB  
Libraries  -  Math::Amoeba 0.04
Math::Amoeba is a Multidimensional Function Minimization. SYNOPSIS use Math::Amoeba qw(ConstructVertices EvaluateVertices Amoeba MinimiseND); my ($vertice,$y)=MinimiseND(@guess,@scales,&func,$tol,$itmax,$verbose); my...
4.1 KB  
Development Tools  -  Excel Column Name to Number 1.0
XLSCOLSTR2NUM takes in a cellular array of characters and returns a array of numbers of the same size with elements corresponding to Excel column numbers.See Also XLSCOLNUM2STR
10 KB  
Libraries  -  Set::CrossProduct 1.92
Set::CrossProduct is a Perl module that allows you to work with the cross product of two or more sets. SYNOPSIS my $iterator = Set::CrossProduct->new( ARRAY_OF_ARRAYS ); # get the next tuple my $number_of_tuples = $iterator->cardinality;...
7.17 KB  
Libraries  -  MLDBM::TinyDB 0.20
MLDBM::TinyDB is a Perl module that can help you to create and manipulate structured MLDBM tied hash references. SYNOPSIS use MLDBM::TinyDB; ## or use MLDBM::TinyDB qw/db add_common/; @common = qw/created updated/; ## optional $tree =...
10.24 KB  
Libraries  -  Finance::YahooQuote 0.22
Finance::YahooQuote is a Perl module that can get stock quotes from Yahoo! Finance. SYNOPSIS use Finance::YahooQuote; # setting TIMEOUT and PROXY is optional $Finance::YahooQuote::TIMEOUT = 60; $Finance::YahooQuote::PROXY =...
22.53 KB  
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB  
Libraries  -  App::SimpleScan::Substitution::Line 2.02
App::SimpleScan::Substitution::Line is a line with optional fixed variable values. SYNOPSIS my $line = App::SimpleScan::Substitution::Line->new(" this "); # Use only this value when substituting " ". $line->fix(substituite =>...
54.27 KB