这是一个简单的文件传输例子,使用了skynet封装的socket接口。熟悉一个框架最好的方法就是用它。
skynet有一个“服务(service)”的概念,每个服务类似与一个模块,完成特定的任务,启动一个服务可以使用 newservice() 或 uniqueservice()。
首先是客户端:
package.cpath = "luaclib/?.so"
package.path = "lualib/?.lua;examples/?.lua"
local socket = require "clientsocket"
local host = "127.0.0.1"
local port = 8888
local path = "/home/mick/"
local filename = "cxl"
local blocksize = 2
local socket_fd = socket.connect(host, port)
print(path .. filename)
local file = io.open(path .. filename, "rb")
local len = file:seek("end")
file:seek("set")
local time
local remain
time = math.modf(len / blocksize) + 1
remain &#