Thread flock() & apache (31 answers)
Opened by Froschpopo at 2005-11-01 16:03

Dubu
 2005-11-02 12:09
#59520 #59520
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
[quote=Froschpopo,02.11.2005, 07:19]
Code: (dl )
1
2
3
4
5
open(FILE, ">/srv/www/htdocs/tables/rows/base.csv") or die $!;
flock FILE, 2;
print FILE @cont;
flock FILE, 8;
close(FILE);
[/quote]
Wie vermutet: Nach dem open() ist deine Datei schon leer, dafuer sorgt das ">". Das flock() kann da bei hoher Last schon zu spaet kommen.

Und esskar hat natuerlich auch recht, dass das zweite flock() weg muss, sonst wird die Datei evtl. entsperrt, bevor die Daten drin sind. (Durch Pufferung kann es sein, dass das erst beim close() passiert.)

Schau dir perldoc -q "get locking" an.

View full thread flock() & apache