From a8b743ac01b42271c947658882a36219dce2290b Mon Sep 17 00:00:00 2001 From: c-cube Date: Wed, 21 May 2025 18:04:14 +0000 Subject: [PATCH] deploy: 8e809c8b8f29bd1b70e9f89a8c925db46d7e4e59 --- nanoev/Nanoev_unix/index.html | 2 +- nanoev/index.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nanoev/Nanoev_unix/index.html b/nanoev/Nanoev_unix/index.html index 5593e0c..a0600d6 100644 --- a/nanoev/Nanoev_unix/index.html +++ b/nanoev/Nanoev_unix/index.html @@ -1,5 +1,5 @@ -Nanoev_unix (nanoev.Nanoev_unix)

Module Nanoev_unix

Nano event loop

include module type of struct include Nanoev end

Summary

Nanoev is a small abstraction over non-blocking IO event loops offered by most operating systems (e.g kqueue on BSD/macOS, poll on posix systems, epoll on linux, completion ports on windows).

The idea is that a Nanoev.t encapsulates a single event loop in a reusable form, and can be used in higher-level concurrency packages or to write async IO code directly. See Nanoev_unix for a Unix.select-based implementation and Nanoev_posix for a poll-based (better) implementation.

type t = Nanoev.t
exception Closed
module Impl = Nanoev.Impl
val clear : t -> unit

Reset the state, similar to creating a new event loop from scratch

val wakeup_from_outside : t -> unit

Wakeup a sleeping event loop from the outside (another thread, a signal handler, etc.). This must be thread-safe.

val step : t -> unit

Run one step of the event loop until something happens. This can potentially block the caller for an interdeterminate duration.

val close : t -> Unix.file_descr -> unit

Close the file descriptor and clean it up inside the event loop. Callbacks registered on this FD will be called with ~closed:true.

val max_fds : t -> int

Maximum number of file descriptors that can be observed at once. This depends on the syscall underlying the event loop, as well as other system limits (see ulimit -n to change this limit on linux, for example).

val on_readable : +Nanoev_unix (nanoev.Nanoev_unix)

Module Nanoev_unix

Nanoev implementation based on Unix.select

include module type of struct include Nanoev end

Summary

Nanoev is a small abstraction over non-blocking IO event loops offered by most operating systems (e.g kqueue on BSD/macOS, poll on posix systems, epoll on linux, completion ports on windows).

The idea is that a Nanoev.t encapsulates a single event loop in a reusable form, and can be used in higher-level concurrency packages or to write async IO code directly. See Nanoev_unix for a Unix.select-based implementation and Nanoev_posix for a poll-based (better) implementation.

type t = Nanoev.t
exception Closed
module Impl = Nanoev.Impl
val clear : t -> unit

Reset the state, similar to creating a new event loop from scratch

val wakeup_from_outside : t -> unit

Wakeup a sleeping event loop from the outside (another thread, a signal handler, etc.). This must be thread-safe.

val step : t -> unit

Run one step of the event loop until something happens. This can potentially block the caller for an interdeterminate duration.

val close : t -> Unix.file_descr -> unit

Close the file descriptor and clean it up inside the event loop. Callbacks registered on this FD will be called with ~closed:true.

val max_fds : t -> int

Maximum number of file descriptors that can be observed at once. This depends on the syscall underlying the event loop, as well as other system limits (see ulimit -n to change this limit on linux, for example).

val on_readable : t -> Unix.file_descr -> 'a -> diff --git a/nanoev/index.html b/nanoev/index.html index 3575834..e6e4388 100644 --- a/nanoev/index.html +++ b/nanoev/index.html @@ -1,2 +1,2 @@ -index (nanoev.index)

Package nanoev

Package info

changes-files
readme-files
+index (nanoev.index)

Package nanoev

Package info

changes-files
readme-files