open HANDLE, "$file" or die "Can't open: $!"; flock(HANDLE, LOCK_SH); #could use LOCK_EX, it doesn't prevent this problem #### open WRITER, ">$file" or die "Can't open: $!"; flock(WRITER, LOCK_EX);