Lorenz: flock() und nichts ging mehr

hi,
ich hab da ein problem mit flock().
mein qelltext ist folgendermasen:

use Fcntl qw(:DEFAULT :flock);

----(schnipp)----

open(DA,">gast.data") &ERROR("datei","gast.data");
flock(DA, LOCK_EX);
print DA @eintraege;
close (DA);

#ende

lass ich das script ohne flock() laufen passt alles wunderbar, nur wenn ich es mit flock() laufen lass ist anschliesend die datei leer. ABER WAS IST AN DER SYNTAX FALSCH???

danke für eure hilfe

ciao Lorenz

  1. moin, moin,

    open(DA,">gast.data") &ERROR("datei","gast.data");
    flock(DA, 2); # Schreibschutz einschalten
    print DA @eintraege;
    flock(DA, 8); # flock wird wieder aufgehoben
    close (DA);

    Steffen D.

    PS:
    Der Server sollte natürlich ein UNIX-System sein.

  2. Hallo,

    use Fcntl qw(:DEFAULT :flock);

    ----(schnipp)----

    open(DA,">gast.data") &ERROR("datei","gast.data");
    flock(DA, LOCK_EX);

    versuch' mal
    flock DA, LOCK_EX or die "flock DA: $!";
    und schaue dir die Fehlermeldung an.

    ciao Lorenz

    Gruss
       Kai