セマフォを得る

# sem_acquire

(PHP 4, PHP 5, PHP 7, PHP 8)

sem_acquire — セマフォを得る

### 説明

function sem_acquire(SysvSemaphore `$semaphore`, bool `$non_blocking` = `false`): bool

sem_acquire() はデフォルトで、(必要な場合) セマフォが確保できるまでブロックします。 既に確保されているセマフォを得ようとするプロセスは、 セマフォの獲得により max_aquire 値を超える場合、 永久にブロックされます。

リクエスト処理の後、プロセスにより獲得された全てのセマフォのうち、 明示的に開放されていないものが自動的に開放され、警告が表示されます。

### パラメータ

`semaphore`
  `semaphore` はセマフォのリソースで、 sem_get() によって得られます。
`non_blocking`
  セマフォが確保できるまでプロセスを待たせたくない場合に指定します。 `true` にすると、セマフォをその場で確保できなかった場合に、 この関数は即時に `false` を返します。

### 戻り値

成功した場合に `true` を、失敗した場合に `false` を返します。

### 変更履歴

バージョン | 説明
--- | ---
8.0.0 | 引数 `semaphore` は、 SysvSemaphore クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、リソースが期待されていました。

### 参考

- sem_get() - セマフォ ID を得る
- sem_release() - セマフォを解放する

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open