- 博客(2)
- 收藏
- 关注
原创 协程实现并发下载
在单线程的程序中,采取的是顺序执行方式。对于下载程序来说,单线程的效率是极其低的,原因是它只能在下载完一个文件后才可以读取该文件。当接收一个远程文件时,程序将大部分时间花费在等待数据接收上。更明确地说,将时间用在了对receive阻塞调用上。因此,如果一个程序可以同时下载所有文件的话,效率就会大大提升。当一个连接没有可用数据时,程序可用处理其它连接。 在Lua中,可用协同程序实现并发...
2018-02-25 23:59:44 1274
原创 HTTP远程下载
实现HTTP远程下载文件,需要通过socket。 在Lua中,可以通过LuaSocket接口与远程站点建立连接,然后发送下载文件的请求,并接收文件(数据块),最后关闭连接。 示例代码如下:-- 加载LuaSocket库 require "socket" -- 定义主机和下载的文件 host = "www.w3.org" file = "/TR/TRC-htm132.html" -...
2018-02-25 22:19:05 804
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人