Skip to content

Add handling of terminal OS signals

Latest
Compare
Choose a tag to compare
@madkins23 madkins23 released this 26 Jun 20:11

Now <ctrl>-c will use the Terminator for more or less graceful shutdown:

$ lsp-tester @~/work/lisp/lsp-tester/cfg/client.cfg
13:10:35 INF LSP Tester starting
13:10:35 INF Receiver starting for=server
^C13:10:37 WRN Terminal OS signal received signal=interrupt
13:10:37 INF Shutdown svc=Receivers
13:10:37 ERR End of file or broken connection for=server
13:10:37 INF Receiver finished for=server
13:10:37 INF LSP Tester finished

Go can't handle SIGKILL. On Linux kill <pid> sends a SIGTERM so that is handled:

$ lsp-tester @~/work/lisp/lsp-tester/cfg/client.cfg
13:08:01 INF LSP Tester starting
13:08:01 INF Receiver starting for=server
13:08:17 WRN Terminal OS signal received signal=terminated
13:08:17 INF Shutdown svc=Receivers
13:08:17 ERR End of file or broken connection for=server
13:08:17 INF Receiver finished for=server
13:08:17 INF LSP Tester finished

but kill -9 <pid> is not:

$ lsp-tester @~/work/lisp/lsp-tester/cfg/client.cfg
13:08:44 INF LSP Tester starting
13:08:44 INF Receiver starting for=server
Killed