我有一个 2 线程应用程序。一个 GUI 线程和一个工作线程 (CWinThread),我在其中进行耗时操作 - 计算和 HTTP 通信。
我必须从 HTTP 切换到 SSL 套接字连接。我还需要验证服务器证书(是否可信,是否过期,是否被撤销)
哪个库用于 SSL 套接字(MFC、Boost 或其他)?
我必须使用同步操作还是异步操作?我认为如果我使用异步操作,我可能会实现可以从 GUI 线程调用的取消功能。
如果我使用异步操作,将套接字操作移到第一个线程中是否更好?
SSL协议(protocol)是否支持流数据压缩?
最佳答案
对于 SSL 支持 - 查看 openssl.org
取消支持很好;为此,您必须定期从工作线程检查是否请求取消。注意使用 volatile 变量或使用临界区保护对它的访问。 不要从 GUI 线程执行网络操作,即使它是异步的。不从 GUI 线程执行任何类型的 IO 是一个很好的策略,以确保它具有响应能力,更重要的是,它不会挂起。
关于visual-studio - Windows 中的 SSL 套接字。图书馆?同步/异步?线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/370784/