Semaphore
PHP Manual

Einführung

Diese Extension bietet Funktionen zur Nutzung der Unix System V IPC Funktionen. Sie unterstützt Semaphore, Shared Memory und den Nachrichtenaustausch zwischen Prozessen (Inter Process Communication - IPC).

Semaphore können genutzt werden um den exklusiven Zugriff auf eine gemeinsame Resource zu koordinieren oder um die Anzahl der gleichzeitigen Zugriffe auf eine gemeinsame Resource zu limitieren.

Die Extension bietet auch Funktionen zur Nutzung von Shared Memory. Im Shared Memory lassen sich prozessübergreifend globale Variablen anlegen. Verschiedene PHP Prozesse sowie in anderen Sprachen (z.B. Perl, C, ...) geschriebene Anwendungen können auf diese Daten zugreifen und so einen globalen Datenaustausch bereitstellen. Beachten Sie das Shared Memory alleine keinen Schutz gegen konkurierende Zugriffe bietet, dieser kann allerdings mit Hilfe von Semaphoren sichergestellt werden.

Durch Unix vorgegebene Shared Memory Maximalwerte
SHMMAX maximale Größe eines Shared Memory Segments, üblich sind 131072 Bytes
SHMMIN minimale Größe eines Shared Memory Segments, üblich ist 1 Byte
SHMMNI maximale Anzahl von Shared Memory Segmente auf dem System, üblich sind 100
SHMSEG maximale Anzahl von Shared Memory Segmenten je Prozess, üblich sind 6

Die Funktionen zum Nachrichtenaustausch können genutzt werden um Nachrichten an andere Prozesse zu verschicken oder zu empfangen. Sie bieten einen einfachen und effektiven Weg zum Datenaustausch zwischen Prozessen ohne auf Alternativen wie Unix Domain Sockets zurückgreifen zu müssen.

Hinweis: Diese Erweiterung steht auf Windows-Betriebssystemen nicht zur Verfügung.


Semaphore
PHP Manual