Hallo,
ich kann zwar immer noch kein PERL, aber generell sei gesagt:
wird eine Ressource zum Zwecke der Veränderung belegt, so muss sie bereits _vor_ dem ersten Lesen exclusiv gesperrt werden.
Die Vorgänge des Lesens und des zurückschreibens sind nicht teilbar und müssen komplett durch ein exclusives Lock (entsprechendes Semaphor) geschützt werden.
Damit dieser Schutz greift, muss jeder beteiligte Prozess auf denselben Semaphor zugreifen und kein Prozess darf das vereinbarte Verfahren umgehen. Üblicherweise werden daher die Prozesse der Sperrung von Ressourcen im Betriebssystem gekapselt.
LG
Chris