module Task:sig
..end
Core task registration.
A task will be a set of events to watch, and a corresponding function to execute when one of the events is trigered.
The executed function may then return a list of new tasks to schedule.
type ('a, 'b)
task = {
|
priority : |
|
events : |
|
handler : |
A task is a list of events awaited, and a function to process events that have occured.
The 'a
parameter is the type of priorities, 'b
will be a subset of possible
events.
typeevent =
[ `Delay of float
| `Exception of Unix.file_descr
| `Read of Unix.file_descr
| `Write of Unix.file_descr ]
Type for possible events.
Please not that currently, under win32, all socket used in ocaml-duppy are expected to be in blocking mode only!
val add : 'a Duppy.scheduler -> ('a, [< event ]) task -> unit
Schedule a task.