added fork on linux as well as implimented pid file to check for other running crons

This commit is contained in:
Botanic 2013-10-23 15:26:36 -07:00
parent 4cb47986bb
commit 5ab5b58649

View file

@ -15,6 +15,20 @@ class Sync{
*/
static public function syncdata ($display = true) {
if (function_exists('pcntl_fork')) {
$pid = pcntl_fork();
}
$pidfile = '/tmp/ams_cron_pid';
if(isset($pid)) {
// We're the main process.
} else {
if(!file_exists($pidfile)) {
$pid = getmypid();
$file = fopen($pidfile, 'w');
fwrite($file, $pid);
fclose($file);
try {
$dbl = new DBLayer("lib");
$statement = $dbl->executeWithoutParams("SELECT * FROM ams_querycache");
@ -66,6 +80,9 @@ class Sync{
print_r($e);
}
}
unlink($pidfile);
}
}
}
}