note 36073 deleted from function.flock by danbrown
| From: | danbrown@php.net | Date: | Mon, 18 May 2009 00:47:47 +0000 |
| Subject: | note 36073 deleted from function.flock by danbrown | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-155432@lists.php.net to get a copy of this message | ||
Note Submitter: thanatos_101 at yahoo dot com
----
flock() is disabled in some linux kernels (2.4 in my case), it
always returns success. i'm using sysv semaphores to
compensate.
notice : knowing how to use icps and icprm are essential to
debugging semaphore stuff!!!
simple example for an exclusive only lock thingy
// obtain exclusive lock
function lock ($filename) {
// get semaphore key
$sem_key = ftok($filename, 'LOCK');
// get semaphore identifier
$sem_id = sem_get($sem_key, 1);
// acquire semaphore lock
sem_acquire($sem_id);
// return sem_id
return $sem_id;
}
// release lock
function unlock($sem_id) {
// release semaphore lock
sem_release($sem_id);
}