POSIX セマフォは、System V セマフォより軽量です。POSIX セマフォ構造体は 25 個までのセマフォの配列ではなく、1 つのセマフォだけを定義します。
次の表に、POSIX セマフォインタフェースの一覧を示します。
表 6–3 POSIX セマフォインタフェース
sem_open(3RT) |
名前付きセマフォに接続する。指定によっては作成する |
sem_init(3RT) |
名前なしセマフォ構造体を初期化する (呼び出し元プログラムの内部で行われるのため、名前付きセマフォではない) |
sem_close(3RT) |
開いているセマフォへの接続を終了する |
sem_unlink(3RT) |
開いているセマフォへの接続を終了し、最後のプロセスがセマフォを閉じるときにセマフォを削除する |
sem_destroy(3RT) |
名前なしセマフォ構造体を初期化する (呼び出し元プログラムの内部で行われるのため、名前付きセマフォではない) |
sem_getvalue(3RT) |
セマフォの値を指定された整数にコピーする |
sem_wait(3RT)、sem_trywait(3RT) |
セマフォがほかのプロセスによって保持されている場合に、ブロックするかエラーを返す |
sem_post(3RT) |
セマフォの数を増やす |