POE::Component::Supervisor::Supervised::Proc(3p)

NAME
POE::Component::Supervisor::Supervised::Proc - A supervision descriptor for UNIX processes.

VERSION
version 0.09

SYNOPSIS
    use POE;

    use POE::Component::Supervisor;
    use POE::Component::Supervisor::Supervised::Proc;

    POE::Component::Supervisor->new(
        children => [
            POE::Component::Supervisor::Supervised::Proc->new(
                program => [qw(memcached -m 64)],
                restart_policy => "permanent",
            ),
        ],
    );

    $poe_kernel->run;

DESCRIPTION
This is a factory object that creates POE::Component::Supervisor::Handle::Proc objects.

ATTRIBUTES
See also "ATTRIBUTES" in POE::Component::Supervisor::Handle::Proc, all of the documented attributes that apply to handle creation are borrowed by this class.

handle_class
    The class to instantiate.

    Defaults to POE::Component::Supervisor::Handle::Proc.

    Note that attributes are inherited only from POE::Component::Supervisor::Handle::Proc. If your handle class requires additional attributes, you must subclass your own "Supervised" variant.

    The "_inherit_attributes_from_handle_class" method can then be invoked on your subclass to re-inherit all the attributes. Read the source of POE::Component::Supervisor::Supervised for more details.

METHODS
See also "METHODS" in POE::Component::Supervisor::Supervised.

spawn
    Called by POE::Component::Supervisor when a new instance of the child process should be spawned.

is_abnormal_exit
    Used by "should_restart". See POE::Component::Supervisor::Supervised for details.

    Returns true if the "exit_code" argument is not equal to 0.