Go to the first, previous, next, last section, table of contents.


SystemV IPC 関数

Function: msgctl id,cmd,arg
System V IPC 関数 msgctl を呼び出します。cmd&IPC_STAT で あれば、arg は返される msqid_ds 構造体を納める変数でなければなりま せん。ioctl と同じように、エラー時には未定義値、ゼロのときは "0 but true"、それ以外なら、その値そのものを返します。

Function: msgget key,flags
System V IPC 関数 msgget を呼び出します。メッセージキューの ID か、エラー 時には未定義値を返します。

Function: msgrcv id,var,size,type,flags
System V IPC 関数 msgrcv を呼び出し、メッセージキュー id から、変 数 var に最大メッセージ長 size のメッセージを受信します。メッ セージが受信されたならば、var の先頭がメッセージタイプとなり、 var の最大長は、size にこのメッセージタイプの長さを加えたも のになります。成功時には真を返し、エラー時には偽を返します。

Function: msgsnd id,msg,flags
System V IPC 関数 msgsnd を呼び出し、メッセージキュー id にメッセー ジ msg を送信します。msg の先頭は、long 整数のメッセージタイ プでなければならず、これは、pack("L", $type) として生成できます。 成功時には真を、エラー時には偽を返します。

Function: semctl id,semnum,cmd,arg
System V IPC 関数 semctl を呼び出します。cmd が、`&IPC_STAT'`&GETALL' のときには、arg は、返されるsemid_ds 構造体か、 セマフォ値の配列を納める変数でなければなりません。ioctl と同じよ うに、エラー時には未定義値、ゼロのときは "0 but true"、それ以外なら、そ の値そのものを返します。

Function: semget key,nsems,flags
System V IPC 関数 semget を呼び出します。セマフォ ID か、エラー時には未 定義値を返します。

Function: semop key,opstring
シグナルを送信や、待ち合わせなどのセマフォ操作を行なうために、System V IPC 関数 semop を呼び出します。opstring は、semop 構造体の pack された配列でなければなりません。semop 構造体は、それぞれ、 pack("sss", $semnum, $semop, $semflag) のように作ることができます。 セマフォ操作の数は、opstring の長さからわかります。成功時には真を、 エラー時には偽を返します。例として、
$semop = pack("sss", $semnum, -1, 0);
die "Semaphore trouble: $!\n" unless semop($semid, $semop);

は、セマフォ ID $semid のセマフォ $semnum で待ち合わせを行ないます。セマ フォにシグナルを送るには、"-1"を "1" に変更してください。

Function: shmctl id,cmd,arg
System V IPC 関数 shmctl を呼び出します。CMD が、`&IPC_STAT' ならば、 arg は、返される shmid 構造体を納める変数でなければなりません。 ioctl と同じように、エラー時には未定義値、ゼロのときは "0 but true"、そ れ以外なら、その値そのものを返します。

Function: shmget key,size,flags
System V IPC 関数 shmget を呼び出します。共有メモリのセグメント ID か、 エラー時には未定義値を返します。

Function: shmread id,var,pos,size
Function: shmwrite id,string,pos,size
System V 共有メモリセグメント ID に対し、アタッチして、コピーを行ない、 デタッチするという形で、位置 pos から、サイズ size だけ、読 み込みか書き込みを行ないます。読み込み時には、var は読み込んだデー タを納める変数でなければなりません。書き込み時には、string が長す ぎても、size バイトだけが使われます。string が短すぎる場合に は、size バイトを埋めるために、ヌル文字が書き込まれます。成功時に は真を、エラー時には偽を返します。


Go to the first, previous, next, last section, table of contents.

検索式: