summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/luv/examples/uvbook/queue-work.lua
blob: cf52abfb2166046e4b5971099866dcae4a7e12ca (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
local uv = require('luv')

local ctx = uv.new_work(
    function(n) --work,in threadpool
        local uv = require('luv')
        local t = uv.thread_self()
        uv.sleep(100)
        return n*n,n 
    end, 
    function(r,n) print(string.format('%d => %d',n,r)) end    --after work, in loop thread
)
uv.queue_work(ctx,2)
uv.queue_work(ctx,4)
uv.queue_work(ctx,6)
uv.queue_work(ctx,8)
uv.queue_work(ctx,10)

uv.run('default')
uv.loop_close()