package lwt
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=ea064e214f78e5800a5df83ac496cc427efa205af815e17f0a8c3c7eb6f2a059
md5=926936860087c5819d6ca04241bc894a
doc/lwt.unix/Lwt_engine/index.html
Module Lwt_engine
Lwt unix main loop engine
Events
Type of events. An event represent a callback registered to be called when some event occurs.
val stop_event : event -> unitstop_event event stops the given event.
val fake_event : eventEvent which does nothing when stopped.
Event loop functions
iter block performs one iteration of the main loop. If block is true the function must block until one event becomes available, otherwise it should just check for available events and return immediately.
val on_readable : Unix.file_descr -> (event -> unit) -> eventon_readable fd f calls f each time fd becomes readable.
val on_writable : Unix.file_descr -> (event -> unit) -> eventon_readable fd f calls f each time fd becomes writable.
on_timer delay repeat f calls f one time after delay seconds. If repeat is true then f is called each delay seconds, otherwise it is called only one time.
Returns the number of events waiting for a file descriptor to become readable.
Returns the number of events waiting for a file descriptor to become writable.
val fake_io : Unix.file_descr -> unitSimulates activity on the given file descriptor.
Engines
An engine represents a set of functions used to register different kinds of callbacks for different kinds of events.
class virtual abstract : object ... endAbstract class for engines.
class type t = object ... endType of engines.
Predefined engines
module Ev_backend : sig ... endType of libev loops.
class libev : ?backend:Ev_backend.t -> unit -> object ... endEngine based on libev. If not compiled with libev support, the creation of the class will raise Lwt_sys.Not_available.
class virtual select_based : object ... endAbstract class for engines based on a select-like function.
class virtual poll_based : object ... endAbstract class for engines based on a poll-like function.
The current engine
val get : unit -> tget () returns the engine currently in use.
val set : ?transfer:bool -> ?destroy:bool -> t -> unitset ?transfer ?destroy engine replaces the current engine by the given one.
If transfer is true (the default) all events from the current engine are transferred to the new one.
If destroy is true (the default) then the current engine is destroyed before being replaced.
module Versioned : sig ... end