view src/luan/modules/Thread.luan @ 1000:32d4b569567c

simplify handle()
author Franklin Schmidt <fschmidt@gmail.com>
date Wed, 19 Oct 2016 04:22:51 -0600
parents f16c77ef0f4f
children bae2d0c2576c
line wrap: on
line source

java()
local ThreadLuan = require "java:luan.modules.ThreadLuan"
local Luan = require "luan:Luan.luan"
local error = Luan.error
local set_metatable = Luan.set_metatable or error()


local M = {}

M.fork = ThreadLuan.fork
M.schedule = ThreadLuan.schedule


M.global = {}  -- shared across threads
local map = ThreadLuan.StringMap.new()
local global_mt = {}
set_metatable(M.global,global_mt)

function global_mt.__index(_,key)
	return map.get(key)
end

function global_mt.__new_index(_,key,value)
	map.set(key,value)
end

function global_mt.get_timeout()
	return map.timeout
end

function global_mt.set_timeout(timeout)
	map.timeout = timeout
end


return M