note 60883 added to function.flock

From: Date: Thu, 19 Jan 2006 10:27:26 +0000
Subject: note 60883 added to function.flock
Groups: php.notes 
Request: Send a blank email to php-notes+get-102081@lists.php.net to get a copy of this message
An addition to administrator at proxy-list dot org snippet below. To prevent unnecessary waiting check if the lock is obtained, if so skip the usleep(): $fp = fopen($logFileName, 'a'); $canWrite = false; //Waiting until file will be locked for writing while (!$canWrite) { $canWrite = flock($fp, LOCK_EX); // If lock not obtained sleep for 0 - 2000 miliseconds, to avoid colision if( !$canWrite ) { $miliSeconds = rand(0, 20); //1 u = 100 miliseconds usleep(round($miliSeconds*100000)); } } //file was locked so now we can store information fwrite($fp, $toSave); fclose($fp); ---- Server IP: 83.137.20.120Probable Submitter: 62.100.54.4 ---- Manual Page -- http://www.php.net/manual/en/function.flock.php Edit -- http://master.php.net/manage/user-notes.php?action=edit+60883 Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+60883&report=yes&reason=added+to+the+manual Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+60883&report=yes&reason=bad+code Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+60883&report=yes&reason=spam Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+60883&report=yes&reason=useless Delete: non-english -- http://master.php.net/manage/user-notes.php?action=delete+60883&report=yes&reason=non-english Delete: already in docs -- http://master.php.net/manage/user-notes.php?action=delete+60883&report=yes&reason=already+in+docs Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+60883&report=yes Reject -- http://master.php.net/manage/user-notes.php?action=reject+60883&report=yes Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#102081) next »