- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个具有这种结构的服务器应用程序:有一个对象,称他为服务器,它在无休止的循环中监听和接受连接。我有来自 CAsyncSocket 的后代类,它覆盖了事件 OnReceive,称他为 ProxySocket。我还有一个包含早期创建线程的线程池。
当服务器对象接收到连接时,他接受新对象 ProxySocket 上的新连接。当数据到达 ProxySocket 时,他创建一个命令对象并将其交给线程池。在这个命令对象中,我给出了 ProxySocket 的套接字句柄。当创建新的命令对象时 - 我在工作线程中创建一个新的 Socket 并将句柄附加到它。
接下来是我的问题:当命令结束时,套接字不会关闭,我只是分离句柄并将 CSocket 句柄设置为 INVALID_SOCKET 值,如计划的那样。但是我的第一个 ProxySocket 对象在那之后没有收到新数据接收的消息。我该如何解决这个问题?
最佳答案
我认为您不能在线程池场景中使用 CAsyncSocket 对象(或其后代)。 CAsyncSockets 是在 WSASsyncSelect 之上实现的——它告诉 winsock 将通知发送到窗口句柄。因为 Windows 具有线程关联性,所以永远不能将 CAsyncSocket 处理“移动”到不同的线程。
关于c++ - CAsyncSocket 和 ThreadPool 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2661685/
我正在寻找一种无需子类化即可使用 CAsyncSocket 的方法。到目前为止,在我发现的所有示例和教程中,它们都是它的子类,我想避免使用它。 提前致谢 最佳答案 CAsyncSocket 旨在通过子
我正在使用 MFC CAsyncSocket 在多线程环境中进行一些网络通信。在尝试让接受的套接字接受传入数据几个小时后,我遇到了一个页面,该页面指出要调用 CAsyncSocket 的 OnRece
我有当前使用 CAsyncSocket 的控制台应用程序。我需要实现 SSL,所以经过一番搜索后我找到了这个项目:http://www.codeproject.com/Articles/3915/CA
所以,文档说: http://msdn.microsoft.com/zh-cn/library/ct7d990b(v=VS.80).aspx “Receive 返回接收到的字节数。如果连接已关闭,则返
如果我在调用 Connect 之后但在 OnConnect 之前删除 CAsyncSocket, CAsyncSocket 会使我的应用程序崩溃回调已被调用。 ASSERT(pSocket != NU
我有一个具有这种结构的服务器应用程序:有一个对象,称他为服务器,它在无休止的循环中监听和接受连接。我有来自 CAsyncSocket 的后代类,它覆盖了事件 OnReceive,称他为 ProxySo
我被要求为 friend 查看一些代码。 (由于 MFC 和很多糟糕的代码,我犹豫是对的,但他赢了……) 这是一个基于对话框的应用程序,使用了 CAsyncSocket。 问题表现为一些不间断的调试中
我是一名优秀的程序员,十分优秀!