-
skynet.newservice(name),用於創建新服務,會調用服務初始化函數:skynet.start();
-
skynet.call(“服務名”,“lua”,“方法名(函數名)”,參數1、參數2…):向指定服務發送lua類型消息,阻塞函數;
-
skynet.register_protocol{}:將指定的協議記錄到一張表裏面,後續可通過協議名或id找到此協議。相關屬性:
-
name:協議名
-
id:協議ID(若指定PTYPE_SOCKET,則意味着會接收skynet_socket.c中發送的socket事件)
-
pack:發送消息的打包函數
-
unpack:接收消息的拆包函數
-
dispatch:接收消息的(分發)處理函數。(消息類型包括:open(客戶端建立連接)、data(消息分發)、close(客戶端關閉)、error(錯誤))
-
skynet.ret(skynet.pack()):返回命令調用結果,所有通過ret的返回值都要用pack打包;
5、使用socketdriver建立監聽:
socket = socketdriver.listen(address, port) #新建socket,綁定監聽地址和端口
socketdriver.start(socket) #將socket加入epoll
skynet:httpserver 研究
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.