重新设置代码格式
This commit is contained in:
+40
-39
@@ -2,8 +2,8 @@
|
||||
|
||||
#include "ASIO_Utils.h"
|
||||
|
||||
#include <atomic>
|
||||
#include <array>
|
||||
#include <atomic>
|
||||
#include <chrono>
|
||||
#include <functional>
|
||||
#include <memory>
|
||||
@@ -13,51 +13,52 @@ namespace Psc::asio_socket {
|
||||
|
||||
class TCP_Client : public Socket_Base {
|
||||
public:
|
||||
~TCP_Client() override;
|
||||
~TCP_Client() override;
|
||||
|
||||
void set_buffer_size(size_t size) { max_buffer_size = size; }
|
||||
void set_dest_address(const Sockaddr_In& a) { dest_address = a; }
|
||||
void create();
|
||||
void tick();
|
||||
std::string read();
|
||||
void send(const std::string& data);
|
||||
std::string to_string() override;
|
||||
void set_buffer_size(size_t size) { max_buffer_size = size; }
|
||||
void set_dest_address(const Sockaddr_In &a) { dest_address = a; }
|
||||
void create();
|
||||
void tick();
|
||||
std::string read();
|
||||
void send(const std::string &data);
|
||||
std::string to_string() override;
|
||||
|
||||
enum State {
|
||||
Not_Created,
|
||||
Not_Set_Field,
|
||||
Reconnecting,
|
||||
Connecting,
|
||||
Wait_Check,
|
||||
Connected
|
||||
};
|
||||
enum State {
|
||||
Not_Created,
|
||||
Not_Set_Field,
|
||||
Reconnecting,
|
||||
Connecting,
|
||||
Wait_Check,
|
||||
Connected
|
||||
};
|
||||
|
||||
void close() override;
|
||||
std::atomic<State> state{Not_Created};
|
||||
void set_state(State s);
|
||||
std::function<void(State old_state, State new_state)> on_state_change = nullptr;
|
||||
void close() override;
|
||||
std::atomic<State> state{Not_Created};
|
||||
void set_state(State s);
|
||||
std::function<void(State old_state, State new_state)> on_state_change =
|
||||
nullptr;
|
||||
|
||||
protected:
|
||||
size_t max_buffer_size = 1024 * 1024;
|
||||
ASIO_StreamRingBuffer send_buffer;
|
||||
ASIO_StreamRingBuffer recv_buffer;
|
||||
Sockaddr_In dest_address{};
|
||||
int reconnect_backoff_ms = 200;
|
||||
std::chrono::steady_clock::time_point next_reconnect_tp{};
|
||||
size_t max_buffer_size = 1024 * 1024;
|
||||
ASIO_StreamRingBuffer send_buffer;
|
||||
ASIO_StreamRingBuffer recv_buffer;
|
||||
Sockaddr_In dest_address{};
|
||||
int reconnect_backoff_ms = 200;
|
||||
std::chrono::steady_clock::time_point next_reconnect_tp{};
|
||||
|
||||
asio::io_context io_context;
|
||||
std::unique_ptr<asio::ip::tcp::resolver> resolver;
|
||||
std::unique_ptr<asio::ip::tcp::socket> socket;
|
||||
std::array<char, 16 * 1024> recv_storage{};
|
||||
std::vector<char> send_storage;
|
||||
bool connect_pending = false;
|
||||
bool read_pending = false;
|
||||
bool write_pending = false;
|
||||
asio::io_context io_context;
|
||||
std::unique_ptr<asio::ip::tcp::resolver> resolver;
|
||||
std::unique_ptr<asio::ip::tcp::socket> socket;
|
||||
std::array<char, 16 * 1024> recv_storage{};
|
||||
std::vector<char> send_storage;
|
||||
bool connect_pending = false;
|
||||
bool read_pending = false;
|
||||
bool write_pending = false;
|
||||
|
||||
void schedule_recreate();
|
||||
bool start_connect();
|
||||
void start_read();
|
||||
void start_write();
|
||||
void schedule_recreate();
|
||||
bool start_connect();
|
||||
void start_read();
|
||||
void start_write();
|
||||
};
|
||||
|
||||
} // namespace Psc::asio_socket
|
||||
|
||||
Reference in New Issue
Block a user