summaryrefslogtreecommitdiff
path: root/server-beta/src/service/service.lua
diff options
context:
space:
mode:
author最萌小汐 <sumneko@hotmail.com>2019-09-20 11:46:43 +0800
committer最萌小汐 <sumneko@hotmail.com>2019-09-20 11:46:43 +0800
commite02ead0fa3d86e4c9ecb26ce796bfeb20e751934 (patch)
treef18f43e4584b09223a2b2ad54f6a41d140b8309b /server-beta/src/service/service.lua
parentb243ddc5f819a33683599cc7701cb2f22424e00a (diff)
downloadlua-language-server-e02ead0fa3d86e4c9ecb26ce796bfeb20e751934.zip
注册method
Diffstat (limited to 'server-beta/src/service/service.lua')
-rw-r--r--server-beta/src/service/service.lua40
1 files changed, 40 insertions, 0 deletions
diff --git a/server-beta/src/service/service.lua b/server-beta/src/service/service.lua
new file mode 100644
index 00000000..2f7e31b8
--- /dev/null
+++ b/server-beta/src/service/service.lua
@@ -0,0 +1,40 @@
+local pub = require 'pub'
+local thread = require 'bee.thread'
+local task = require 'task'
+local timer = require 'timer'
+local proto = require 'service.proto'
+
+local m = {}
+m.type = 'service'
+
+function m.listenPub()
+ task.create(function ()
+ while true do
+ pub.checkDead()
+ pub.recieve()
+ task.sleep(0)
+ end
+ end)
+end
+
+function m.startTimer()
+ local last = os.clock()
+ while true do
+ thread.sleep(0.001)
+ local current = os.clock()
+ local delta = current - last
+ last = current
+ timer.update(delta)
+ end
+end
+
+function m.start()
+ pub.recruitBraves(4)
+ task.setErrorHandle(log.error)
+ proto.listen()
+ m.listenPub()
+
+ m.startTimer()
+end
+
+return m