可以在多个SSL流之间共享boost :: asio :: ssl :: context吗?

时间:2015-11-04 10:35:54

标签: c++ multithreading ssl boost-asio

在互联网上挖几个小时我找不到我的问题的答案。

我的模型是:我有一个共享boost::asio::ssl::context,用于创建boost::asio::ssl::stream的实例。然后将流对象传递给不同的线程。

这个模型线程安全吗?是否可以将boost::asio::ssl::context用于构建将同时使用的不同SSL流对象?

,在将此问题标记为重复之前,请仔细阅读说明。谢谢!

我的具体情况,没有任何对象在线程之间共享。所以在Boost.Asio SSL thread safety线程安全中所说的任何内容都不会影响我的情况。我从一个帖子中访问boost::asio::ssl::context

1 个答案:

答案 0 :(得分:3)

因为SSL上下文需要在SSL会话之间共享(否则会话恢复如何工作)SSL上下文类完全是内部线程安全的。您可以在多个SSL连接中使用SSL上下文,也可以从多个线程中使用SSL上下文。