| | |
| | | #ifndef WEBSOCKETCLIENTWITHPOOL_H |
| | | #ifndef WEBSOCKETCLIENTWITHPOOL_H |
| | | #define WEBSOCKETCLIENTWITHPOOL_H |
| | | |
| | | //#include "WebSocketClient.h" |
| | |
| | | // explicit WebSocketClientPool(size_t thread_count); |
| | | // ~WebSocketClientPool(); |
| | | // |
| | | // // 初始化客户端 |
| | | // // 初始化客户端 |
| | | // void init_clients(const std::vector<std::string>& uris); |
| | | // |
| | | // // 退出所有客户端 |
| | | // // 退出所有客户端 |
| | | // void exit_clients(); |
| | | // |
| | | // // 使用线程池发送消息 |
| | | // // 使用线程池发送消息 |
| | | // void post_to_all(const std::string& message); |
| | | // void post_binary_to_all(const std::vector<char>& binary_data); |
| | | // |
| | | // // 从池中选择一个空闲的客户端进行发送,不需要服务器响应 |
| | | // // 从池中选择一个空闲的客户端进行发送,不需要服务器响应 |
| | | // bool post_to_idle_client(const std::string& message); |
| | | // bool post_binary_to_idle_client(const std::vector<char>& binary_data); |
| | | // |
| | | // // 从池中选择一个空闲的客户端进行发送,并需要服务器响应 |
| | | // // 从池中选择一个空闲的客户端进行发送,并需要服务器响应 |
| | | // bool send_to_idle_client(const std::string& message, int timeout_ms); |
| | | // bool send_binary_to_idle_client(const std::vector<char>& binary_data, int timeout_ms); |
| | | // |
| | | // // 从池中选择一个空闲的客户端进行发送,并等待服务器响应 |
| | | // // 从池中选择一个空闲的客户端进行发送,并等待服务器响应 |
| | | // bool send_to_idle_client_and_wait(const std::string& message, int timeout_ms); |
| | | // bool send_binary_to_idle_client_and_wait(const std::vector<char>& binary_data, int timeout_ms); |
| | | // |
| | | // // 从池中选择一个空闲的客户端进行发送,并等待服务器响应,如果超时则重试 |
| | | // // 从池中选择一个空闲的客户端进行发送,并等待服务器响应,如果超时则重试 |
| | | // bool send_to_idle_client_with_retry(const std::string& message, int total_timeout_ms, int retry_interval_ms); |
| | | // bool send_binary_to_idle_client_with_retry(std::vector<char>&& binary_data, int total_timeout_ms, int retry_interval_ms); |
| | | // |
| | | // // 设置 WebSocket 客户端事件处理程序 |
| | | // // 设置 WebSocket 客户端事件处理程序 |
| | | // void set_open_handler(WebSocketClient::OpenHandler handler); |
| | | // void set_message_handler(WebSocketClient::MessageHandler handler); |
| | | // void set_close_handler(WebSocketClient::CloseHandler handler); |