luasocket系列: luasocket tcp
来源:互联网 发布:think php框架 编辑:程序博客网 时间:2024/05/16 15:17
luasocket 拓展库提供了tcp 模块,该模块提供一些操作,非常简单.但是不知道为什么源代码中的例子有错误.
简单写了一个luasocket tcp 协议的例子,代码如下:
tcpsample.lua 代码:
--绑定地址和端口号host = host or "127.0.0.1"port = port or 8080--创建tcp对象,方式和udp创建类似,通过metatable 设置类方法tcp =socket.tcp()--绑定地址和端口号到指定tcp对象上e=tcp:bind(host, port)if(e and e==1)then print("Binding to host '" ..host.. "' and port " ..port.. "...")else print("bind err") endi, p = tcp:getsockname()--监听绑定地址和端口号,排队设置为50e =tcp:listen(50)if(e and e ==1)then print("listen to host '" ..host.. "' and port " ..port.. "...")else print("listen err")endprint("Waiting connection from talker on " .. i .. ":" .. p .. "...")ctcp =nil--等待一个客户端链接进来while 1 do client = tcp:accept() print(client) if(client~=nil)then ctcp =client print("accept success") break else print("accept err") endend--有客户端成功链接进来print(ctcp)while 1 do --阻塞,等待有至少10个字节进入 revbuff=ctcp:receive(10)--向客户端发送数据ctcp:send("你好")end
tcpsample.cpp代码如下:
extern "C" {#include <lua.h> #include <lualib.h>#include <lauxlib.h>#include <luasocket.h>}//加入winsock库#pragma comment(lib, "WS2_32")// 链接到WS2_32.libint main( int argc, char *argv[] ){lua_State* L = lua_open();luaopen_base(L);luaopen_socket_core(L);luaL_dofile(L, "tcpsample.lua");lua_close(L);return 0;}
运行结果如下:
代码非常简洁,接下来的例子,我们将深入luasocket 源代码部分. 尤其对luasocket select IO模式的讲解.对select IO 模型不熟悉的,赶快充电..渍渍渍渍....
0 0
- luasocket系列: luasocket tcp
- luasocket
- luasocket
- LuaSocket
- luasocket
- luasocket系列: luasocket hello world!
- 安装LuaSocket
- luasocket通讯
- luasocket系列之winsocket基础补充_TcpServerDemo
- luasocket系列之winsocket基础补充—winsock库1
- Lua基础 安装LuaSocket
- CentOs 安装lua,luasocket
- MAC安装luasocket
- mac下安装LuaSocket
- MonaServer增加luasocket脚本
- luasocket 之 udp
- luasocket 支持ipv6
- 源码安装luasocket
- 程序员需要的不仅仅是技术
- aurix中DMA使用
- 推荐系统开发之要考虑的问题
- LINUX命令后面常见的>/DEV/NULL 和 2>&1 的含义
- 安装AppServ完成后 不能访问到127.0.0.1的问题
- luasocket系列: luasocket tcp
- python常用库整理
- TQ2440利用nfs挂载文件系统不稳定,启动成功后,总是一会时间就重启
- LeetCode101 SynmetricTree Java题解
- 数组内数值的排序
- C语言程序设计 C语言中的时间函数
- C++基础---字符串(char型字符串)
- 花擦节 Codis作者黄东旭细说分布式Redis架构设计和踩过的那些坑们
- android TextView字体切换