⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 asynctcpsocket.h

📁 本人收集整理的一份c/c++跨平台网络库
💻 H
字号:
#ifndef UTILS_BASE_ASYNCTCPSOCKET_H_#define UTILS_BASE_ASYNCTCPSOCKET_H_#include "asyncpacketsocket.h"namespace utils_base {// Simulates UDP semantics over TCP.  Send and Recv packet sizes// are preserved, and drops packets silently on Send, rather than// buffer them in user space.class AsyncTCPSocket : public AsyncPacketSocket {public:  AsyncTCPSocket(AsyncSocket* socket);  virtual ~AsyncTCPSocket();  virtual int Send(const void *pv, size_t cb);  virtual int SendTo(const void *pv, size_t cb, const SocketAddress& addr);  sigslot::signal1<AsyncTCPSocket*> SignalConnect;  sigslot::signal2<AsyncTCPSocket*,int> SignalClose;protected:  int SendRaw(const void * pv, size_t cb);  virtual void ProcessInput(char * data, size_t& len);private:  char* inbuf_, * outbuf_;  size_t insize_, inpos_, outsize_, outpos_;  int Flush();  // Called by the underlying socket  void OnConnectEvent(AsyncSocket* socket);  void OnReadEvent(AsyncSocket* socket);  void OnWriteEvent(AsyncSocket* socket);  void OnCloseEvent(AsyncSocket* socket, int error);};} // namespace utils_base#endif // UTILS_BASE_ASYNCTCPSOCKET_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -