Einzelnen Beitrag anzeigen
Alt 11.01.2011, 00:03   #7
ZombyKillah
Trashtroll
 
Benutzerbild von ZombyKillah
 
Registriert seit: 19.10.2008
Ort: far away but still in austria
Beiträge: 1.194

Mein Computer

Standard

Du kannst auch aus einen php skript einen neuen php skript aus aufrufen ...
der alte wird dann durch ein time-out gekillt ...

... also eine einfache rekursive Schleife, die das Risiko eingeht, den Server irgendwann zu überlasten ... wenn sie zu oft gestartet wird.
Wobei man dieses durch ein überprüfen, ob eine Datei vorhanden ist speeren kann ...

PHP-Code:
function do_lock(){
 
$file "running.lock";
 if (
$fh fopen($file"r")) { //Wenn das file schon exestiert und geöffent werden kann
  
$last_time fget($fh);
  
fclose($fh);
  
$now date("U");
  if (
$last_time $now 10) return false;
   
//Und der skript vor unter 10 sek rannte gebe falsch zurück.
 
}
 
$fh fopen($file"w+");
 
fput($fhdate("U"));
 
fclose($fh);
 return 
true;
}
function 
do_unlock(){
 
$file "running.lock";
 
unlink($file);
}

if (
do_lock()){
...

...
sleep(5);    //Warte 5 sek ...
do_unlock(); //entferne das Schloss ...
$me "http://".$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF'];
$run_again fopen($me"r");
fget($run_again); //rufe dich selbst auf ...

____________________________________
It's more fun to write crap that nothing!
Just kidding.

Ich bin für kreative Rechtschreibung, da kann man keine Fehler machen
ZombyKillah ist offline   Mit Zitat antworten