Thanks to visit codestin.com
Credit goes to perldoc.perl.org

You are viewing the version of this documentation from Perl blead. This is the main development branch of Perl. (git commit ce96f1e9d09c4b403485f0d292be07d6effd030a)
semctl ID,SEMNUM,CMD,ARG

Calls the System V IPC function semctl(2). You'll probably have to say

use IPC::SysV;

first to get the correct constant definitions. If CMD is IPC_STAT or GETALL, then ARG must be a variable that will hold the returned semid_ds structure or semaphore value array. Returns like ioctl: the undefined value for error, "0 but true" for zero, or the actual return value otherwise. The ARG must consist of a vector of native short integers, which may be created with pack("s!",(0)x$nsem). See also "SysV IPC" in perlipc and the documentation for IPC::SysV and IPC::Semaphore.

Portability issues: "semctl" in perlport.