Mercurial Hosting > luan
diff src/luan/modules/Thread.luan @ 1366:ae2321a09723
improve Thread.schedule
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Mon, 17 Jun 2019 21:50:40 -0600 |
parents | 8d95711f6615 |
children | 431d5bec3ca4 |
line wrap: on
line diff
--- a/src/luan/modules/Thread.luan Wed Jun 12 22:16:10 2019 -0600 +++ b/src/luan/modules/Thread.luan Mon Jun 17 21:50:40 2019 -0600 @@ -29,9 +29,10 @@ ThreadLuan.fork(fn) end -function Thread.schedule(delay,fn,repeating) +function Thread.schedule(fn,options) fn = safe(fn) - ThreadLuan.schedule(delay,fn,repeating) + options = options or {} + ThreadLuan.schedule(fn,options) end @@ -80,4 +81,13 @@ return tbl end + +local backup_lock = ThreadLuan.backupLock.readLock() +local run_in_lock = ThreadLuan.runInLock + +function Thread.run_for_backup(fn) + return run_in_lock(backup_lock,fn) +end + + return Thread