module Signal: Signalinclude Core.Signal
val handle_default : [ `Do_not_use_with_async ] -> 'aCore.Signal that we don't want people to use with
Async.val ignore : [ `Do_not_use_with_async ] -> 'aval set : [ `Do_not_use_with_async ] -> 'a -> 'bval signal : [ `Do_not_use_with_async ] -> 'a -> 'bval handle : ?stop:unit Import.Deferred.t -> t list -> f:(t -> unit) -> unithandle ?stop signals ~f arranges so that whenever a signal in signals is
delivered, f is called on that signal. If f raises, than an exception will be
raised to the monitor in effect when handle was called.
Calling handle has the side-effect of installing a C signal handler for every signal
in signals, which will replace the existing C signal handler for that signal.
val terminating : t listterminating is a list of signals that can be supplied to handle and whose default
behavior is to terminate the program: alrm hup int term usr1 usr2.
Various signals whose default_sys_behavior is `Terminate are not included:
| kill | it's not allowed to be handled |
| pipe | async already ignores this signal, since it handles EPIPE |
| prof | so that we can profile things with -p |
| vtalrm | it already has a handler |
val is_managed_by_async : t -> boolis_managed_by_async signal returns true iff signal is being managed by async, and
hence its default behavior is no longer in effect.