http://qs321.pair.com?node_id=296

semop

See the current Perl documentation for semop.

Here is our local, out-dated (pre-5.6) version:


semop - SysV semaphore operations



semop KEY,OPSTRING



Calls the System V IPC function semop to perform semaphore operations such as signaling and waiting. OPSTRING must be a packed array of semop structures. Each semop structure can be generated with pack("sss", $semnum, $semop, $semflag). The number of semaphore operations is implied by the length of OPSTRING. Returns TRUE if successful, or FALSE if there is an error. As an example, the following code waits on semaphore $semnum of semaphore id $semid:

    $semop = pack("sss", $semnum, -1, 0);
    die "Semaphore trouble: $!\n" unless semop($semid, $semop);

To signal the semaphore, replace -1 with 1. See also IPC::SysV and IPC::SysV::Semaphore documentation.