parent
755f6e8cc1
commit
4a96f7b458
|
@ -1,40 +0,0 @@
|
|||
<?php
|
||||
class pidfile {
|
||||
private $_file;
|
||||
private $_running;
|
||||
|
||||
public function __construct($dir, $name) {
|
||||
$this->_file = "$dir/$name.pid";
|
||||
|
||||
if (file_exists($this->_file)) {
|
||||
$pid = trim(@file_get_contents($this->_file));
|
||||
if (($pid != "") && posix_kill($pid, 0)) {
|
||||
$this->_running = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (! $this->_running) {
|
||||
$pid = getmypid();
|
||||
file_put_contents($this->_file, $pid);
|
||||
}
|
||||
}
|
||||
|
||||
public function __destruct() {
|
||||
if ((! $this->_running) && file_exists($this->_file)) {
|
||||
@unlink($this->_file);
|
||||
}
|
||||
}
|
||||
|
||||
public function is_already_running() {
|
||||
return $this->_running;
|
||||
}
|
||||
|
||||
public function running_time() {
|
||||
return(time() - @filectime($this->_file));
|
||||
}
|
||||
|
||||
public function kill() {
|
||||
if (file_exists($this->_file))
|
||||
return(posix_kill(file_get_contents($this->_file), SIGTERM));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,72 @@
|
|||
<?php
|
||||
/**
|
||||
* @file src/Util/Pidfile.php
|
||||
*/
|
||||
namespace Friendica\Util;
|
||||
|
||||
/**
|
||||
* @brief Pidfile class
|
||||
*/
|
||||
class Pidfile
|
||||
{
|
||||
private $file;
|
||||
private $running;
|
||||
|
||||
/**
|
||||
* @param string $dir path
|
||||
* @param string $name filename
|
||||
* @return void
|
||||
*/
|
||||
public function __construct($dir, $name)
|
||||
{
|
||||
$this->_file = "$dir/$name.pid";
|
||||
|
||||
if (file_exists($this->_file)) {
|
||||
$pid = trim(@file_get_contents($this->file));
|
||||
if (($pid != "") && posix_kill($pid, 0)) {
|
||||
$this->running = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (! $this->running) {
|
||||
$pid = getmypid();
|
||||
file_put_contents($this->file, $pid);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @return void
|
||||
*/
|
||||
public function __destruct()
|
||||
{
|
||||
if ((! $this->running) && file_exists($this->file)) {
|
||||
@unlink($this->file);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @return boolean
|
||||
*/
|
||||
public static function isRunning()
|
||||
{
|
||||
return self::$running;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return object
|
||||
*/
|
||||
public static function runningTime()
|
||||
{
|
||||
return time() - @filectime(self::$file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return boolean
|
||||
*/
|
||||
public static function kill()
|
||||
{
|
||||
if (file_exists(self::$file)) {
|
||||
return posix_kill(file_get_contents(self::$file), SIGTERM);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user