Logic-Tools
view release on metacpan or search on metacpan
lib/Logic/Tools.pm view on Meta::CPAN
die "[FAILED] Ðе ÑдаеÑÑÑ ÑоздаÑÑ ÑоÑк: $!" unless(defined($pid));
if($pid)
{
# ÐапиÑÑ Ñайле блокиÑовки
open(my $pid_file, ">" ,$lock_file) || die "[FAILED] Ðе ÑдалоÑÑ ÑоздаÑÑ Ñайл блокиÑовки $lock_file\n";
print $pid_file "$pid";
close $pid_file;
chown $uid, $gid, $lock_file;
exit;
}
else
{
# daemon
setpgrp();
select(STDERR); $| = 1;
select(STDOUT); $| = 1;
#syslog(LOG_INFO, "---------------------------------------");
#syslog(LOG_INFO, "СкÑÐ¸Ð¿Ñ Ð·Ð°Ð¿ÑÑен");
lib/Logic/Tools.pm view on Meta::CPAN
die "[FAILED] can't create fork: $!" unless(defined($first_child_pid));
if($first_child_pid)
{
# ÐапиÑÑ Ñайле блокиÑовки
open(my $pid_file, ">" ,$lock_file) || die "[FAILED] can't create block file $lock_file\n";
print $pid_file "$first_child_pid";
close $pid_file;
chown $uid, $gid, $lock_file;
while(1)
{
# ÐÑоÑеÑÑ Ð·Ð°Ð¿ÑÑен, но акÑивного пÑоÑеÑÑа Ñ ÑказаннÑм PID неÑ
unless( -e "/proc/$first_child_pid" )
{
die "child $first_child_pid dead, exit\n";
exit;
}
sleep(1);
( run in 0.540 second using v1.01-cache-2.11-cpan-71847e10f99 )