我正在使用venereable libwebsockets库开发一个客户端。
我不知道在哪里分配一个char *
(我猜是在安装过程中的某个地方),这样我就可以通过客户机的lws_callback_function()
中的void *user
参数获得相同的值。
我试过在我的lws_protocols
中设置user
,我试过在我的struct lws_client_connect_info
中设置userdata
,还有很多其他地方我记不起来了。
我正在使用venereable libwebsockets库开发一个客户端。
我不知道在哪里分配一个char *
(我猜是在安装过程中的某个地方),这样我就可以通过客户机的lws_callback_function()
中的void *user
参数获得相同的值。
我试过在我的lws_protocols
中设置user
,我试过在我的struct lws_client_connect_info
中设置userdata
,还有很多其他地方我记不起来了。
2条答案
按热度按时间cczfrluj1#
我让这个工作,但采取了一点调查..
1.将用户数据隐藏在lws_context_creation_info中:
1.从回调恢复用户数据如下:
63lcw9qa2#
我猜你想要的是每个连接的私有数据吗
A.如果你只需要分配一块内存,你可以试试这个:
然后你会在lws_callback(* user)中得到它,user是一个私有的1024字节内存块。
B.如果需要传递参数并使用它:
在lws_callback(* wsi)中: