daemon mode -- background mode ±¸Çö
[PHP]
-- example.php --------------------------------------------
#!/usr/local/bin/php -q
<?php
## -F : run main process in foreground, default background
## -p PIDFILE, -u USER, -m MAXCONNECTION
##
$opt = getopt('Fp:u:m:');
echo 'PPID:'.getmypid()."\n"; // parent PID, debug mode
if(!isset($opt['F'])) // is mean that backgrund mode
{
$pid = pcntl_fork();
## fork(2) -- man 2 fork
## -1(fork fail), 0(child), other(parent)
##
if($pid == -1)
{
echo 'fork fail'."\n"; // some write to error_log file
exit;
}
else if($pid != 0) exit; // is parent pid
echo 'PID:'.getmypid()."\n"; // child PID, debug mode
}
while(1)
{
...
}
exit;
?>
-----------------------------------------------------------
[Born-SHELL]
-- example.sh ---------------------------------------------
#!/bin/sh
_main()
{
while [ 1 ] ; do
...
done
}
_main &
exit 0
-----------------------------------------------------------
|