Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re^2: Parallel::ForkManager using up Resources?

by guice (Scribe)
on Mar 29, 2005 at 17:01 UTC ( #443185=note: print w/ replies, xml ) Need Help??


in reply to Re: Parallel::ForkManager using up Resources?
in thread Parallel::ForkManager eating up Resources?

All using ForkManager. Children die and close their DB handles in order. Quickly post:

foreach my $ln (@lines) { $pm->start && next; ** child starts my $dbh = $this->_child_db(); ... code here ** child finishes with _close_child(); $this->_close_child(); $pm->finish } $pm->wait_all_children() _child_db() { if (!$this->{'_dbh-child')) { print $$ . ": Creating Child DB Handle"; $this->{'_dbh-child'} = new DBI::Connect ......; } return $this->{'_dbh-child'}; } _close_child() { print $$ . ": Closing child DB Handle"; $this->{'_dbh-child'}->disconnect(); delete($this->{'_dbh-child'}); }

Very rough, please don't try to compile it. All my code is on an internal system not connected to the internet.

My code is all very verbose. Everything is working correctly and in order. All children to finish, total 6 processes max ever within top. Finish is always seen before a Start.

-- philip
We put the 'K' in kwality!


Comment on Re^2: Parallel::ForkManager using up Resources?
Download Code
Re^3: Parallel::ForkManager using up Resources?
by guice (Scribe) on Mar 29, 2005 at 17:09 UTC
    Also -- I've added close and finish methods for each child process through ForkManager, too:
    $pm->run_on_start(\&_child_start); $pm->run_on_finish(\&_child_finish); sub _child_start() { my ($pid, $ident) = @_; print "**** STARTED: child with PID $pid"; } sub _child_finish(){ my ($pid, $exit, $ident) = @_; print "**** FINISHED: child with PID $pid exit cide $exit"; }

    -- philip
    We put the 'K' in kwality!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://443185]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (6)
As of 2014-09-19 23:20 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (151 votes), past polls