Ich verwende Semaphor, um einige Teile in meiner Anwendung zu synchronisieren.
Beim Freigeben des Semaphors (semrelease) bekomme ich diese Warnung:
sem_release (): Fehler beim Freigeben von Schlüssel 0xc: Ungültiges Argument
Zuerst weiß ich nicht, ob der Semaphor freigegeben wurde, aber da ich nicht "wahr" als Ergebnis bekomme, schätze ich, dass er nicht veröffentlicht wird.
PHP Version: 5.6.30
ipcs -V = & gt; ipcs von util-linux 2.25.2
Hier ist der Semaphor:
%Vor%Hier ist ein Teil des Codes (Klasse Synchronisation):
%Vor%P.S. Ich erhalte diesen Fehler nur in meiner produktiven Umgebung, und ich kann in meiner Testumgebung nicht reproduzieren / debuggen.
Ich habe im Internet nach dieser Fehlermeldung gesucht, aber ich habe nichts gefunden.
Weiß jemand, was diese Nachricht bedeutet?
Bearbeitet:
Konnten Sie die Schritte von Anfang an folgen:
resource sem_get ( int $key [, int $max_acquire = 1 [, int $perm = 0666 [, int $auto_release = 1 ]]] )
erhalten
bool sem_acquire ( resource $sem_identifier [, bool $nowait = false ] )
und fügen Sie Plausibilitätsprüfungen hinzu, um sicherzustellen, dass die obige Funktion den erwarteten Wert zurückgibt.
Sie können auch überprüfen, ob der andere Teil Ihrer Anwendung unter demselben Benutzer ausgeführt wird, um Berechtigungsprobleme zu vermeiden.