这个websocket++ 的例子正是我想要做的核心。
虽然可以很容易地跟踪用户websocketpp::connection_hdl
,但我需要保留更多关于他们的信息,就像堆栈可能如何跟踪我们正在查看的页面以更新投票、评论、答案、左上角的消息等。
我刚刚发现在此代码示例中锁定时 .push() 是否失败或等待std::queue
不是完全线程安全的?并且我将找到一种方法(可能使用堆栈 q)在为 push 优化的线程安全 C/C++ 队列中工作。更重要的是,我刚刚发现线程安全向量更麻烦Threadsafe Vector class for C++boost::lockfree::queue
从第一个链接中的代码,如何在不锁定和阻塞的情况下以线程安全的方式跟踪用户数据(例如当前查看的堆栈问题)?