我使用uWebSockets版本0.15.x在服务器上接受和管理web套接字连接。我有一个线程调用uWS::TemplatedApp::run来处理这个问题。
我需要从另一个线程向所有打开的web套接字发送数据。我的理解是uWebSockets并不是线程安全的。建议的方法是什么?
( 0.14.x的uWebSockets用户手册讨论了我们::异步,但是这个类已经在0.15.x中消失了。从当前的文档中还不清楚什么是等效的。)
发布于 2019-03-05 02:23:03
这可以使用以下方法来完成:
在建议的用例中,“服务器”线程可以调用uWS::循环::defaultLoop,并提供指向其他线程的指针。其他线程可以调用uWS::循环::暂缓运行“服务器”线程中的代码,在lambda中捕获所需的数据。这些线程可以共享一个套接字列表,只要它是多线程安全的,或者只能从“服务器”线程中运行的代码访问。
https://stackoverflow.com/questions/54967062
复制相似问题