【发布时间】:2020-05-07 04:20:48
【问题描述】:
std::net::TcpStream 有try_clone() 方法来克隆底层套接字,但openssl::ssl::SslStream 没有类似的东西。
【问题讨论】:
std::net::TcpStream 有try_clone() 方法来克隆底层套接字,但openssl::ssl::SslStream 没有类似的东西。
【问题讨论】:
克隆SslStream 没有意义,因为 SSL / TLS 逻辑包含状态。所有克隆都需要同意并更新该状态。
事实上,它用实现了Clone,它是deprecated和removed,因为它是一把大脚枪。
您需要将其包装在 Arc<Mutex<_>> 或等效项中并克隆它。另一种方法是重构您的代码,以便只有一个事物拥有流的所有权,并且您可以通过其他技术进行通信。
另见:
【讨论】: