diff src/luan/modules/Thread.luan @ 1188:9f5edbef3f55

remove old web log files
author Franklin Schmidt <fschmidt@gmail.com>
date Thu, 22 Feb 2018 23:21:06 -0700
parents 7ef40e1923b7
children 3fad7091b419
line wrap: on
line diff
--- a/src/luan/modules/Thread.luan	Thu Feb 22 18:38:45 2018 -0700
+++ b/src/luan/modules/Thread.luan	Thu Feb 22 23:21:06 2018 -0700
@@ -3,6 +3,7 @@
 local Luan = require "luan:Luan.luan"
 local error = Luan.error
 local set_metatable = Luan.set_metatable or error()
+local try = Luan.try or error()
 
 
 local Thread = {}
@@ -11,6 +12,19 @@
 Thread.schedule = ThreadLuan.schedule
 Thread.sleep = ThreadLuan.sleep
 
+function Thread.safe(fn,logger)
+	return function()
+		try {
+			function()
+				fn()
+			end
+			catch = function(e)
+				logger.error(e)
+			end
+		}
+	end
+end
+
 --[[
 Thread.global = {}  -- shared across threads
 local map = ThreadLuan.GlobalMap.new()