GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  SYMPA::PROCESS (3)

.ds Aq ’

NAME

Sympa::Process - Process of Sympa

CONTENTS

SYNOPSIS



  use Sympa::Process;
  my $process = Sympa::Process->instance;
  $process->init(pidname => sympa);

  $process->daemonize;

  $process->fork;



DESCRIPTION

Sympa::Process implements the class to handle process itself of Sympa software.

    Signal handling

Once Sympa::Process is loaded, SIGCHLD signals are captured, and only defunct child processes invoked by fork() method are reaped.

    Methods

instance ( ) Constructor. Creates a singleton instance of Sympa::Process object.

Returns:

A new Sympa::Process instance, or undef for failure.

init ( key => value, ... ) Instance method. TBD.
daemonize ( ) Instance method. Daemonizes process itself. Process is given new process group, detached from TTY and given new process ID.

Parameters:

None.

Returns:

None.

fork ( [ $tag ] ) Instance method. Forks process. Note that this method should be used instead of fork() in Perl core.

Parameter:
$tag A string to determine new child process. By default the name of calling process.

Returns:

See fork in perlfunc.

reap_child ( [ blocking => 1 ] ) DEPRECATED.
wait_child ( ) Instance method. Waits for any child process.

Parameters:

None.

Returns:

0. Returns -1 on failure.

sync_child ( [ hash => \%hash ], [ file => 1 ] ) Updates process information in external data.

Parameters:
hash => \%hash Syncs PIDs in local map %hash
file => 1 Syncs child PIDs in PID file. If dead PID is found, notification will be sent to super-listmaster.

Returns:

None.

remove_pid ([ pid => $pid ], [ final => 1 ] ) Instance method. Removes process ID from PID file. Then if the file is empty, it will be removed.
write_pid ( [ initial => 1 ], [ pid => $pid ] ) Instance method. Writes or adds process ID to PID file.

Parameters:
initial => 1 Initializes PID file. If the file remains, notification will be sent to super-listmaster.
pid => $pid Process ID to be written. By default PID of current process.

direct_stderr_to_file ( ) Instance method. TBD.

    Attributes

Sympa::Process instance may have following attributes:
{children} Hashref with child PIDs forked by fork() method as keys.
{detached} True value is set if daemonize() method was called and the process has been detached from TTY.
{generation} Generation of process. If fork() method succeeds, it will be increased by child process.

    Utility functions

eval_in_time ( $subref, $timeout ) Evaluate subroutine $subref in $timeout seconds.

TBD.

register_handler ( ) Registers SIGCHLD handler. This function is usually called automatically during initialization.

HISTORY

Sympa::Tools::Daemon appeared on Sympa 6.2a.41.

Renamed Sympa::Process appeared on Sympa 6.2.12 and began to provide OO interface.

Sympa 6.2.13 introduced daemonize() method and {detached} attribute.

As of Sympa 6.2.14, SIGCHLD signal was captured and child processes were reaped immediately. reap_child() method (formerly reaper()) was deprecated.

Search for    or go to Top of page |  Section 3 |  Main Index


6.2.14 SYMPA::PROCESS (3Sympa) 2016-02-23

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.