use warnings; use strict; use Fcntl ':flock'; our $talkfile="t44.talk"; open(TRANSCRIPT,"+>>$talkfile") or die "Client can't open transcript file: $!"; # Read the file with a shared lock flock(TRANSCRIPT,LOCK_SH) or die "Couldn't lock transcript: $!\n"; seek(TRANSCRIPT,0,0) or die "Couldn't rewind transcript file: $!\n"; print ; # Write the file with an exclusive lock flock(TRANSCRIPT,LOCK_EX); print TRANSCRIPT "ran at ",time,"\n"; # Unlock the file when you're done flock(TRANSCRIPT,LOCK_UN);