"Semaphore already present" nach Programmabsturz
-
Hallo.
Mir ist vorhin ein Programm, dass auf einem Ubuntu-Rechner lief, mit einem seg. fault abgeschmiert.
Wenn ich versuche, das Programm (mit behobenem Fehler) neuzustarten, erhalte ich nur die Meldung:bash schrieb:
Semaphore already present
There is another process using the semaphore.
Or a process using the semaphore exited abnormally.
In That case try to manually release the semaphore with:
ipcrm sem XXX.Nur wie finde ich heraus, welche id ich entfernen muss?
Es ist vom Programm ja nichts mehr da, insbesondere existiert laut ps kein entsprechender Prozess mehr.
Weiß da jemand vielleicht Abhilfe?Danke.
-
semaphore sind systemweit verfügbar (unter windows sind das mutexe).
Sprich wenn ein programm beim beenden ein semaphore nicht löscht so ist dieser immer noch im system verfügbar.Entweder dein Programm erkennt diesen Fall und löscht oder verwendet den semaphore weiter. Oder du löscht den semaphore über den befehl der in der Meldung steht.
Um die Id des semaphor herauszubekommen kannst du dir alle semaphore über den befehl ipcs -s anzeigen lassen.