boost :: asio是否正确处理递归服务器连接?
我有一个TCP / IP异步服务器,它从async_read处理程序中连接到自身并且似乎死锁:下一个async_accept正在工作但是async_read阻塞。
服务器基于带有线程池的http asio示例。
它实现客户端正在使用的某个API,并且还可以将某些功能委托给另一个服务器(充当代理或云节点)。问题是,当另一台服务器是localhost(例如它自己)时,死锁就会发生在asio库的某个地方。
有什么建议吗?
答案 0 :(得分:1)
我实际上发现问题出在SSL套接字上 - 当服务器调用自身时,握手函数就会死锁。可能与asio ssl代码中的一个链相关。