Ausführungszeit eines CGI Programm festlegen
nikta
- cgi
hallo Leute
ich hätte eine Frage:
Ich habe ein Programm geschrieben dass für Counter zuständig ist.
in dem dass eine Datei gelesen wird und den Counterzahl (die in dem File befindet) um 1 erhöht wird.
soweit alles hat funktioniert
aber wenn der Benützer die aufgerufene Seite sehr schnell aktualisiert (sprich permanent auf STRG+R drückt), lässt keine Zeit um das Skript auszuführen und manchmal verursacht dass die Counterdatei gelesen wird aber hat keine Zeit zum schreiben dieser Datei und in Folge wird das Counter wieder auf 0 gesetzt !!!!!
also hätte fragen ob eine Möglichkeit gebe, dass man für ein Skript bestimmt dass es mindestens 1 Sekunde ausführen soll ?????
Ich danke euch im Voraus.
p.s. vielleicht habe ich total falsch programmiert ---> bitte um Vorschläge
LG
nikta
p.s. vielleicht habe ich total falsch programmiert ---> bitte um Vorschläge
Du suchst flock
Struppi.
p.s. vielleicht habe ich total falsch programmiert ---> bitte um Vorschläge
Du suchst flock
Struppi.
hallo und mal danke
habe mit flock versucht, leider hat es keinen erfolg gegeben hier ein Schnitt meines Programmes
open(FILE,"$logfile");
flock(FILE, LOCK_EX);
@kh = <FILE>;
flock(FILE, LOCK_UN);
close(FILE);
$kh[$staatid]++;
$kh[$staatid]="$kh[$staatid]\n";
$kh[220]++;
$kh[220]="$kh[220]\n";
open (FILE,">$logfile");
flock(FILE, LOCK_EX);
print FILE @kh;
flock(FILE, LOCK_UN);
close(FILE)
vielleicht liegt es an meinem Programm ??
LG
nikta
habe mit flock versucht, leider hat es keinen erfolg gegeben hier ein Schnitt meines Programmes
Ist ja auch klar.
open(FILE,"$logfile");
flock(FILE, LOCK_EX);
@kh = <FILE>;
flock(FILE, LOCK_UN);
Das solltest du in der Regel nicht machen, close gibt die Datei automatisch frei.
close(FILE);
und ab hier ist die Datei wieder frei und ein anderer Prozess kann darauf zugreifen.
Du musst eine Datei während der ganzen Laufzeit flocken, d.h. auch evtl. zum lesen und schreiben öffnen.
Struppi.
p.s. vielleicht habe ich total falsch programmiert ---> bitte um Vorschläge
Du suchst flock
Struppi.
hallo und mal danke
habe mit flock versucht, leider hat es keinen Erfolg gegeben hier ein Schnitt meines Programmes
open(FILE,"$logfile");
flock(FILE, LOCK_EX);
@kh = <FILE>;
flock(FILE, LOCK_UN);
close(FILE);
$kh[$staatid]++;
$kh[$staatid]="$kh[$staatid]\n";
$kh[220]++;
$kh[220]="$kh[220]\n";
open (FILE,">$logfile");
flock(FILE, LOCK_EX);
print FILE @kh;
flock(FILE, LOCK_UN);
close(FILE)
vielleicht liegt es an meinem Programm ??
LG
nikta