App-CLI-Plugin-Proc-PID-File
view release on metacpan or search on metacpan
lib/App/CLI/Plugin/Proc/PID/File.pm view on Meta::CPAN
# MyApp.pm
package MyApp;
use strict;
use base qw(App::CLI::Extension);
# extension method
__PACKAGE__->load_plugins(qw(Proc::PID::File));
# extension method
__PACKAGE__->config( proc_pid_file => { verify => 1, dir => "/var/run", name => "myapp" } );
1;
# MyApp/Hello.pm
package MyApp::Hello;
use strict;
use feature ":5.10.0";
use base qw(App::CLI::Command);
sub run {
lib/App/CLI/Plugin/Proc/PID/File.pm view on Meta::CPAN
$self->debug("alive(): for A::C::P::Proc::PID::File compat method");
my $pid = $self->read;
if (defined $pid) {
$self->debug("alive(): $pid");
} else {
$self->debug("alive(): not living my process");
return 0;
}
if ($pid != $$ && kill(0, $pid)) {
return $self->verify($pid) ? 1 : 0;
}
return 0;
}
sub _read {
my $self = shift;
$self->debug("read(): for A::C::P::Proc::PID::File compat method");
if (!-e $self->path) {
return;
( run in 1.817 second using v1.01-cache-2.11-cpan-39bf76dae61 )