This class facilitates handling signals in Sentry.
It defines its own callback interface to isolate the client code
from the dependency on sun.misc.*. The sun.misc.* package is not officially
supported, yet, per many indications, it is very unlikely to be dropped in
the future JDK releases. If needed it can be re-implemented using JNI,
though we'd rather not ever take this path.
This class relies on sun.misc.SignalHandler which registers signal handlers via static
method handle(). Therefore, SigUtils also only exposes a static method registerListener()
This class, as sun.misc.SignalHandler, supports a multiple signal listeners per each signal.
The same signal listener can be used to handle multiple signals.