C++ 如何在boost::beast上继续使用websocket?

C++ 如何在boost::beast上继续使用websocket?,c++,boost,beast,C++,Boost,Beast,我引用了有关boost::beast websocket async的文档 为了避免断开连接,我删除了on_read函数中的“ws_.async_close(websocket::close_code::normal…” 但是beast websocket通过以_read结尾而断开连接 std::make_shared<session>(ios)->run(host, port, text); ios.run(); // I want to keep running it un

我引用了有关boost::beast websocket async的文档

为了避免断开连接,我删除了on_read函数中的“ws_.async_close(websocket::close_code::normal…”

但是beast websocket通过以_read结尾而断开连接

std::make_shared<session>(ios)->run(host, port, text);
ios.run(); // I want to keep running it until explicit calling close.
std::make_shared(ios)->运行(主机、端口、文本);
ios.run();//我想一直运行它,直到显式调用close为止。
更换代码

    // Close the WebSocket connection
    ws_.async_close(websocket::close_code::normal,
        std::bind(
            &session::on_close,
            shared_from_this(),
            std::placeholders::_1));
用你想要的逻辑。你想要发生什么?你想读更多吗?然后再做一个类似上面的阅读:

    // Read a message into our buffer

谢谢,我想避免关闭websocket,然后我删除了async_close。但是websocket仍然是自动关闭的。你还做了什么?还要记住另一端可能正在断开连接