summaryrefslogtreecommitdiff
path: root/meta/3rd/luv/library/uv_idle_t.lua
blob: 22368193fae6a42c43c8eacd907936d912141c07 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
---@meta

--- Idle handles will run the given callback once per loop iteration, right before
--- the `uv_prepare_t` handles.
---
--- **Note**: The notable difference with prepare handles is that when there are
--- active idle handles, the loop will perform a zero timeout poll instead of
--- blocking for I/O.
---
--- **Warning**: Despite the name, idle handles will get their callbacks called on
--- every loop iteration, not when the loop is actually "idle".
---
--- ```lua
--- local idle = uv.new_idle()
--- idle:start(function()
---   print("Before I/O polling, no blocking")
--- end)
--- ```
---
---@class uv.uv_idle_t : uv.uv_handle_t
---
local idle

--- Start the handle with the given callback.
---
---@param  callback   function
---@return 0|nil      success
---@return uv.error.message|nil err
---@return uv.error.name|nil err_name
function idle:start(callback) end

--- Stop the handle, the callback will no longer be called.
---
---@param  check      any
---@return 0|nil      success
---@return uv.error.message|nil err
---@return uv.error.name|nil err_name
function idle:stop(check) end