|  | 
|  | TCPSocket ()=default | 
|  | 
| auto | Domain () const -> SockDomain | 
|  | 返回套接字域。更多... 
 | 
|  | 
| bool | IsClosed () const | 
|  | 
| 结果 | GetSockError () const | 
|  | 获取上次错误代码(如果有)。更多... 
 | 
|  | 
| bool | BadSocket () const | 
|  | 检查是否发生异常。更多... 
 | 
|  | 
| 结果 | NonBlocking (bool non_block) | 
|  | 
| bool | NonBlocking () const | 
|  | 
| 结果 | RecvTimeout (std::chrono::seconds timeout) | 
|  | 
| 结果 | SetBufSize (std::int32_t n_bytes) | 
|  | 
| 结果 | SendBufSize (std::int32_t *n_bytes) | 
|  | 
| 结果 | RecvBufSize (std::int32_t *n_bytes) | 
|  | 
| 结果 | SetKeepAlive () | 
|  | 
| 结果 | SetNoDelay (std::int32_t no_delay=1) | 
|  | 
| TCPSocket | 接受 () | 
|  | 接受新连接,为新连接返回一个新的 TCP 套接字。更多... 
 | 
|  | 
| 结果 | Accept (TCPSocket *out, SockAddress *addr) | 
|  | 
|  | ~TCPSocket () | 
|  | 
|  | TCPSocket (TCPSocket const &that)=delete | 
|  | 
|  | TCPSocket (TCPSocket &&that) noexcept(true) | 
|  | 
| TCPSocket & | operator= (TCPSocket const &that)=delete | 
|  | 
| TCPSocket & | operator= (TCPSocket &&that) noexcept(true) | 
|  | 
| HandleT const & | Handle () const | 
|  | 返回原生套接字文件描述符。更多... 
 | 
|  | 
| 结果 | Listen (std::int32_t backlog=256) | 
|  | 监听传入请求。应在绑定后调用。更多... 
 | 
|  | 
| 结果 | BindHost (std::int32_t *p_out) | 
|  | 将套接字绑定到 INADDR_ANY,返回操作系统选择的端口。更多... 
 | 
|  | 
| auto | Port () const | 
|  | 
| 结果 | Bind (StringView ip, std::int32_t *port) | 
|  | 将套接字绑定到地址。更多... 
 | 
|  | 
| 结果 | SendAll (void const *buf, std::size_t len, std::size_t *n_sent) | 
|  | 发送数据,如果没有错误,所有数据都应该被发送。更多... 
 | 
|  | 
| 结果 | RecvAll (void *buf, std::size_t len, std::size_t *n_recv) | 
|  | 接收数据,如果没有错误,所有数据都应该被接收。更多... 
 | 
|  | 
| auto | Send (const void *buf_, std::size_t len, std::int32_t flags=0) | 
|  | 使用套接字发送数据。更多... 
 | 
|  | 
| auto | Recv (void *buf, std::size_t len, std::int32_t flags=0) | 
|  | 使用套接字接收数据。更多... 
 | 
|  | 
| std::size_t | Send (StringView str) | 
|  | 发送字符串,格式与 RABIT 中的 Python 套接字包装器匹配。更多... 
 | 
|  | 
| 结果 | Recv (std::string *p_str) | 
|  | 接收字符串,格式与 RABIT 中的 Python 套接字包装器匹配。更多... 
 | 
|  | 
| 结果 | 关闭 () | 
|  | 关闭套接字,如果套接字未关闭,则在析构函数中自动调用。更多... 
 | 
|  | 
| 结果 | 关闭 () | 
|  | 在套接字上调用 shutdown。更多... 
 | 
|  |