Hi,
Lock NB ist dafür da, dass der Prozess nicht wartet auf ein Lock, sondern der Programmierer den Rückgabewert von flock() abfragt, ob er sperren konnte.
Dann würde ich das mal so in meiner Programmlogik entsprechend würdigen:
flock( $FH, LOCK_EX | LOCK_NB )
or die "Kann nicht locken, weil Datei bereits gelockt ist: $!";
flock( $FH, LOCK_EX )
or die "Kann nicht locken, weil es vom System nicht unterstützt wird: $!";
Schöne Grüße.