mirror of
https://github.com/c-cube/moonpool.git
synced 2025-12-06 03:05:30 -05:00
9 lines
7.9 KiB
HTML
9 lines
7.9 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>abstract (lwt.Lwt_engine.abstract)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../../_odoc-theme/odoc.css"/><meta name="generator" content="odoc 3.1.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> – <a href="../../../index.html">Index</a> » <a href="../../index.html">lwt</a> » <a href="../index.html">Lwt_engine</a> » abstract</nav><header class="odoc-preamble"><h1>Class <code><span>Lwt_engine.abstract</span></code></h1><p>Abstract class for engines.</p></header><div class="odoc-tocs"><nav class="odoc-toc odoc-local-toc"><ul><li><a href="#event-loop-methods">Event loop methods</a></li><li><a href="#backend-methods">Backend methods</a></li></ul></nav></div><div class="odoc-content"><div class="odoc-spec"><div class="spec method anchored" id="method-destroy"><a href="#method-destroy" class="anchor"></a><code><span><span class="keyword">method</span> destroy : unit</span></code></div><div class="spec-doc"><p>Destroy the engine, remove all its events and free its associated resources.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-transfer"><a href="#method-transfer" class="anchor"></a><code><span><span class="keyword">method</span> transfer : <span><a href="#">abstract</a> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p><code>transfer engine</code> moves all events from the current engine to <code>engine</code>. Note that timers are reset in the destination engine, i.e. if a timer with a delay of 2 seconds was registered 1 second ago it will occur in 2 seconds in the destination engine.</p></div></div><h3 id="event-loop-methods"><a href="#event-loop-methods" class="anchor"></a>Event loop methods</h3><div class="odoc-spec"><div class="spec method anchored" id="method-iter"><a href="#method-iter" class="anchor"></a><code><span><span class="keyword">method</span> <span class="keyword">virtual</span> iter : <span>bool <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-fork"><a href="#method-fork" class="anchor"></a><code><span><span class="keyword">method</span> fork : unit</span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-on_readable"><a href="#method-on_readable" class="anchor"></a><code><span><span class="keyword">method</span> on_readable : <span><a href="../../../ocaml/Unix/index.html#type-file_descr">Unix.file_descr</a> <span class="arrow">-></span></span> <span><span>(<span><a href="../index.html#type-event">event</a> <span class="arrow">-></span></span> unit)</span> <span class="arrow">-></span></span> <a href="../index.html#type-event">event</a></span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-on_writable"><a href="#method-on_writable" class="anchor"></a><code><span><span class="keyword">method</span> on_writable : <span><a href="../../../ocaml/Unix/index.html#type-file_descr">Unix.file_descr</a> <span class="arrow">-></span></span> <span><span>(<span><a href="../index.html#type-event">event</a> <span class="arrow">-></span></span> unit)</span> <span class="arrow">-></span></span> <a href="../index.html#type-event">event</a></span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-on_timer"><a href="#method-on_timer" class="anchor"></a><code><span><span class="keyword">method</span> on_timer : <span>float <span class="arrow">-></span></span> <span>bool <span class="arrow">-></span></span> <span><span>(<span><a href="../index.html#type-event">event</a> <span class="arrow">-></span></span> unit)</span> <span class="arrow">-></span></span> <a href="../index.html#type-event">event</a></span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-fake_io"><a href="#method-fake_io" class="anchor"></a><code><span><span class="keyword">method</span> fake_io : <span><a href="../../../ocaml/Unix/index.html#type-file_descr">Unix.file_descr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-readable_count"><a href="#method-readable_count" class="anchor"></a><code><span><span class="keyword">method</span> readable_count : int</span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-writable_count"><a href="#method-writable_count" class="anchor"></a><code><span><span class="keyword">method</span> writable_count : int</span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-timer_count"><a href="#method-timer_count" class="anchor"></a><code><span><span class="keyword">method</span> timer_count : int</span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-forwards_signal"><a href="#method-forwards_signal" class="anchor"></a><code><span><span class="keyword">method</span> forwards_signal : <span>int <span class="arrow">-></span></span> bool</span></code></div></div><h3 id="backend-methods"><a href="#backend-methods" class="anchor"></a>Backend methods</h3><p>Notes:</p><ul><li>the callback passed to register methods is of type <code>unit -> unit</code> and not <code>event -> unit</code></li><li>register methods return a lazy value which unregisters the event when forced</li></ul><div class="odoc-spec"><div class="spec method anchored" id="method-cleanup"><a href="#method-cleanup" class="anchor"></a><code><span><span class="keyword">method</span> <span class="keyword">private</span> <span class="keyword">virtual</span> cleanup : unit</span></code></div><div class="spec-doc"><p>Cleanup resources associated with the engine.</p></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-register_readable"><a href="#method-register_readable" class="anchor"></a><code><span><span class="keyword">method</span> <span class="keyword">private</span> <span class="keyword">virtual</span> register_readable : <span><a href="../../../ocaml/Unix/index.html#type-file_descr">Unix.file_descr</a> <span class="arrow">-></span></span>
|
||
<span><span>(<span>unit <span class="arrow">-></span></span> unit)</span> <span class="arrow">-></span></span>
|
||
<span>unit <a href="../../../ocaml/Stdlib/Lazy/index.html#type-t">Lazy.t</a></span></span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-register_writable"><a href="#method-register_writable" class="anchor"></a><code><span><span class="keyword">method</span> <span class="keyword">private</span> <span class="keyword">virtual</span> register_writable : <span><a href="../../../ocaml/Unix/index.html#type-file_descr">Unix.file_descr</a> <span class="arrow">-></span></span>
|
||
<span><span>(<span>unit <span class="arrow">-></span></span> unit)</span> <span class="arrow">-></span></span>
|
||
<span>unit <a href="../../../ocaml/Stdlib/Lazy/index.html#type-t">Lazy.t</a></span></span></code></div></div><div class="odoc-spec"><div class="spec method anchored" id="method-register_timer"><a href="#method-register_timer" class="anchor"></a><code><span><span class="keyword">method</span> <span class="keyword">private</span> <span class="keyword">virtual</span> register_timer : <span>float <span class="arrow">-></span></span>
|
||
<span>bool <span class="arrow">-></span></span>
|
||
<span><span>(<span>unit <span class="arrow">-></span></span> unit)</span> <span class="arrow">-></span></span>
|
||
<span>unit <a href="../../../ocaml/Stdlib/Lazy/index.html#type-t">Lazy.t</a></span></span></code></div></div></div></body></html>
|