Skip to content

Cocos2dx-Lua 平台的 socket 客户端,支持 TCP/UDP

Notifications You must be signed in to change notification settings

2Dou/cocos2dx-lua-socket

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

#Cocos2dx-Lua C++ socket 客户端

模型

阻塞,每个SocketClient直接创建一个线程阻塞调用recv

相关消息通知存入队列,由update时发送到Lua

使用方法

将 cpp 加入 lua_bindings 工程,使用lua_cocos2dx_socket_manual.hppregister_all_cocos2dx_socket_manual(L)注册模块。

下面有一份简易的 Lua 代码:

function test:testSocket()
    local client
    client = sock.Cocos2dSocket:new(function(type, data, ext)
        if type == sock.EventType.kState then
            self:handleState(client, data, ext)
        else
            self:handleData(client, data)
        end
    end)
    client:retain()
    client:ConnectIP("127.0.0.1", 8080, sock.SOCK_STREAM)
end

function test:handleState(client, state, ext)
    if state == sock.State.kConnected then
        print("连接成功")
        client:Send("hallo")
    elseif state == sock.State.kClosed then
        print("断开连接")
        client:release()
    end
end

function test:handleData(client, data)
    print("received: " .. data)
end

注意

Windows平台还未调试

About

Cocos2dx-Lua 平台的 socket 客户端,支持 TCP/UDP

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published