`sig
type t = Core.Core_thread.t
val create : ('a -> 'b) -> 'a -> t
val self : unit -> t
val id : t -> int
val exit : unit -> unit
val delay : float -> unit
val join : t -> unit
val wait_read : Unix.file_descr -> unit
val wait_write : Unix.file_descr -> unit
val wait_timed_read : Unix.file_descr -> float -> bool
val wait_timed_write : Unix.file_descr -> float -> bool
val yield : unit -> unit
val sigmask :
Core.Signal.sigprocmask_command ->
Core.Signal.t list -> Core.Signal.t list
val wait_signal : Core.Signal.t list -> int
val threads_have_been_created : unit -> bool
val num_threads : unit -> int option
val block_forever : unit -> 'a
val safe_create : (unit -> unit) -> Core.Std.Thread.t
end`