Websocket async_close выходит из строя с «Операцией отменена» в Destructor (Boost.best)C++

Программы на C++. Форум разработчиков
Anonymous
Websocket async_close выходит из строя с «Операцией отменена» в Destructor (Boost.best)

Сообщение Anonymous »

Я использую boost.beast (websocket :: Stream ) для реализации клиента WebSocket для обмена OKX. В своем деструкторе я называю Async_Close () , чтобы изящно выключить соединение и использовать обещание std :: ждать выполнения операции.

Код: Выделить всё

#ifndef _OKX_WS_HPP_
#define _OKX_WS_HPP_

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include "core/exchangeConnector.hpp"

namespace exchangeConnector {

namespace websocket = beast::websocket;

namespace Ws {
class okx : public std::enable_shared_from_this {
public:
using readQueue_t = boost::lockfree::spsc_queue;
using readBuffer_t = beast::flat_buffer;

okx(readQueue_t* readQueue) :
m_resolver {net::make_strand(m_ioc)},
m_ws {net::make_strand(m_ioc), m_ctx},
m_readQueue {readQueue} {}

~okx()
{
std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/79605612/websocket-async-close-fails-with-operation-canceled-in-destructor-boost-beast[/url]

Вернуться в «C++»