-I-Programm in Go gemacht, die mit syscall.Kill()
kann nicht `syscall.Kill()` ein daemonisierte Go Prozess
einen Prozess tötet Aber wenn ich diesen Prozess mit fork()
+ setsid()
daeminze dann ist syscall.Kill()
nicht, diesen Prozess zu töten.
Wenn ich Shell kill
verwende, dann kann ich diesen Prozess in beiden Fällen beenden.
Ich habe verschiedene Signale ausprobiert: SIGINT
, SIGTERM
und SIGKILL
buthey töten den Daemon nicht.
Überprüfen Sie den Fehler von der sys Anruf? syscall.Kill sollte genau wie kill von der Kommandozeile funktionieren – JimB
Sind Sie sicher, dass Sie Ihr Signal an die richtige PID senden? – kostix
PID ist korrekt. Es wird automatisch aus der 'run.pid' Datei übernommen und' PID' wird auf dem Bildschirm ausgedruckt. Also ist 'PID' korrekt. – Eugene