# sem_acquire

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

sem_acquire — Fordert Zugriff auf einen Semaphor an

### Beschreibung

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

Standardmäßig blockiert sem_acquire() (falls nötig) bis ein Zugriff auf den Semaphor möglich ist. Ein Prozess, der Zugriff auf einen Semaphor anfordert, auf den er bereits Zugriff hat, wird für immer blockieren, wenn dieser erneute Zugriff die maximalen Zugriffe auf diesen Semaphor überschreiten würde.

Nach Abarbeitung einer Anfrage werden alle noch vom Prozess gehaltenen Semaphore automatisch freigegeben und entsprechende Warnungen erzeugt.

### Parameter-Liste

`semaphore`
  `semaphore` ist ein Semaphor, der von sem_get() zurückgegben wurde.
`non_blocking`
  Gibt an, ob der Prozess nicht auf den Zugriff auf den Semaphor warten soll. Bei `true` wird der Aufruf unmittelbar `false` zurückgeben, wenn der Semaphor nicht sofort reserviert werden kann.

### Rückgabewerte

Gibt bei Erfolg `true` zurück. Bei einem Fehler wird `false` zurückgegeben.

### Changelog

Version | Beschreibung
--- | ---
8.0.0 | `semaphore` erwartet nun eine SysvSemaphore-Instanz; vorher wurde eine resource erwartet.

### Siehe auch

- sem_get() - Fordert Zugriff auf eine Semaphor-ID an
- sem_release() - Gibt einen Semaphor frei

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