Module Luv.SignalSource

Signals.

See Signals in the user guide and uv_signal_t — Signal handle in libuv.

Interface

Sourcetype t = [ `Signal ] Handle.t

Binds uv_signal_t.

Note that values of this type can be passed to functions in Luv.Handle, in addition to the functions in this module. In particular, see Luv.Handle.close.

Sourceval init : ?loop:Loop.t -> unit -> (t, Error.t) result

Allocates and initializes a signal handle.

Binds uv_signal_init.

Sourceval start : t -> int -> (unit -> unit) -> (unit, Error.t) result

Starts the signal handle.

Binds uv_signal_start.

See Signal numbers below for possible values of the integer argument.

Sourceval start_oneshot : t -> int -> (unit -> unit) -> (unit, Error.t) result

Like Luv.Signal.start, but the handle is stopped after one callback call.

Binds uv_signal_start_oneshot.

Requires libuv 1.12.0.

Feature check: Luv.Require.(has signal_start_oneshot)

Sourceval stop : t -> (unit, Error.t) result

Stops the signal handle.

Binds uv_signal_stop.

Sourceval signum : t -> int

Evaluates to the signal number associated with the handle.

Binds uv_signal_t.signum.

Signal numbers

For the moment, the signals exposed are those that are both present on Unix and present or emulated by libuv on Windows. See Windows notes and Unix notes.

Note that these signal numbers do not, in general, match the ones in module Sys in the OCaml standard library.

Sourceval sigabrt : int
Sourceval sigfpe : int
Sourceval sighup : int
Sourceval sigill : int
Sourceval sigint : int
Sourceval sigkill : int
Sourceval sigsegv : int
Sourceval sigterm : int
Sourceval sigwinch : int