相关疑难解决方法(0)

使用boost :: asio时,为什么每个连接需要strand?

我正在审查Boost网站上的HTTP Server 3示例.

你能解释我为什么需要strand每个连接吗?正如我所看到的,我们read_some只在read-event的处理程序中调用.所以基本上read_some调用是顺序的,因此不需要strand(第3段的第2项说同样的事情).多线程环境中的风险在哪里?

c++ boost boost-asio

43
推荐指数
2
解决办法
2万
查看次数

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

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

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

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

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

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

c++ ssl multithreading boost-asio

5
推荐指数
1
解决办法
946
查看次数

boost::asio 是否使用 ssl 会话缓存?

例如,我开发了电子邮件客户端。我知道某些服务器(例如imap.gmail.com)会缓存 SSL 会话。所以我想重用 SSL 会话(来自我这边的缓存)来减少服务器负载。

我使用boost::asio作为网络引擎。问题是:

  1. 如果boost::asio::ssl::stream不使用 ssl-session-cache,我该如何启用它?
  2. 如果boost::asio::ssl::stream使用 ssl-session-cache,我该如何关闭它?:)

c++ ssl boost

5
推荐指数
1
解决办法
1034
查看次数

标签 统计

c++ ×3

boost ×2

boost-asio ×2

ssl ×2

multithreading ×1