For relative EVFILT_TIMER changes, data is the timer interval in milliseconds by default; NOTE_NSECONDS or NOTE_USECONDS in fflags selects nanoseconds or microseconds.
Returned timer events report the number of expirations since the last arming or delivery in data.
(timeout nevents eventlist nchanges changelist kq -- result) Applies event changes and waits for ready events.
Inputs
timeout: timespecCrefborrowed wait timeout in seconds and nanoseconds, or a typed NILtimespec Cref to wait until an event arrives; a zero timespec returns immediately.
nevents: Int32 event-list capacity; with 0, the call applies the changes and returns without waiting.
eventlist: struct_keventRef caller-owned writable event storage, or a typed NILstruct_kevent Ref when nevents is 0; the call writes ready events or per-change error records; an error record has EV_ERROR (0x4000n16) set in flags and its error number in data.
result: Int32 number of records returned, including per-change errors, 0 on timeout, or -1 on failure, including a failed change that finds no room for its error record in eventlist.
"String" use
"control" use
"macos/macos" use
"macos/posix" use
{} Int32 {} [
kq: kqueue;
("created=" kq 0 < ~ LF
"close=" kq close 0 = LF) printList
0
] "main" exportFunction