- /**
- * @brief Checks if the process is already running
- *
- * @param string $taskname The name of the task that will be used for the name of the lockfile
- * @param string $task The path and name of the php script
- * @param int $timeout The timeout after which a task should be killed
- *
- * @return bool Is the process running?
- */
- function is_already_running($taskname, $task = "", $timeout = 540) {
-
- $lockpath = get_lockpath();
- if ($lockpath != '') {
- $pidfile = new pidfile($lockpath, $taskname);
- if ($pidfile->is_already_running()) {
- logger("Already running");
- if ($pidfile->running_time() > $timeout) {
- $pidfile->kill();
- logger("killed stale process");
- // Calling a new instance
- if ($task != "")
- proc_run(PRIORITY_MEDIUM, $task);
- }
- return true;
- }
- }
- return false;
- }
-