TpSocket 类
V0.2.1TpUtils
2025-11-14
基础信息
| 头文件: | include <TpSocket.h> |
|---|---|
| Cmake: | None |
| 发布版本: | V0.2.1 |
| 继承类: | |
| 派生类: |
Public 类型
enum TpSocket::TpSocketType
| 名称 | 值 | 描述 |
|---|---|---|
| TP_SOCK_STREAM | 0 | |
| TP_SOCK_DGRAM | 1 |
enum TpSocket::TpSocketStatus
| 名称 | 值 | 描述 |
|---|---|---|
| TP_SOCK_DISCONNECT | 0 | |
| TP_SOCK_BIND | 1 | |
| TP_SOCK_LISTEN | 2 | |
| TP_SOCK_CONNECT | 3 |
Public 成员函数
| TpSocket() | ||
|---|---|---|
| TpSocket(TpSockfd sockfd, TpString addr_r, tpUInt16 port_r) | ||
| ~TpSocket() | ||
| TpSocket & TpSocket::operator= | operator=(const TpSocket &other) | |
| socket(TpSocketType type) | 创建新的socket | |
| bind(const TpString &addr, tpUInt16 port) | 绑定到指定地址和端口 | |
| close() | 关闭连接 | |
| close(TpSockfd sock) | 关闭指定连接 | |
| sendTo(const tpUInt8 *data, tpUInt64 size, const TpString &addr, tpUInt16 port) | 发送数据到指定地址和端口(UDP) | |
| recvFrom(tpUInt8 *data, tpUInt64 size, TpString &addr, tpUInt16 *port) | 从指定端口和地址接收数据(UDP) | |
| TpSocket * TpSocket::connectToHost | connectToHost(const TpString &addr, tpUInt16 port, tpBool block=TP_TRUE) | 连接到目标地址和端口 |
| listen(tpInt32 size) | 监听连接 | |
| send(const tpUInt8 *data, tpUInt64 size) | 发送数据(TCP) | |
| recv(tpUInt8 *data, tpUInt64 size, tpInt32 flag=0) | 接收数据(TCP) | |
| getSocket() | 获取socket连接文件描述符 | |
| TpString | getLocalAddress() | 获取socket连接主机地址 |
| getLocalPort() | 获取socket连接主机端口 | |
| TpString | getPeerAddress() | 获取远端主机地址 |
| getPeerPort() | 获取短短主机端口 | |
| waitForBytesWritten(int msecs=10000) | 设置写阻塞等待时间 | |
| waitForReadyRead(int msecs=10000) | 设置读的等待时间 |
成员函数说明
TpSocket::TpSocket()
暂无注释...
TpSocket::TpSocket(TpSockfd sockfd, TpString addr_r, tpUInt16 port_r)
暂无注释...
TpSocket::~TpSocket()
暂无注释...
TpSocket & TpSocket::operator=(const TpSocket &other)
暂无注释...
TpSockfd TpSocket::socket(TpSocketType type)
创建新的socket...
创建新的socket
参数:type: socket类型
返回值:返回创建好的socket fd
tpInt32 TpSocket::bind(const TpString &addr, tpUInt16 port)
绑定到指定地址和端口...
绑定到指定地址和端口
参数:addr: 地址
参数:port: 端口
返回值:
tpInt32 TpSocket::close()
关闭连接...
关闭连接
返回值:
tpInt32 TpSocket::close(TpSockfd sock)
关闭指定连接...
关闭指定连接
参数:sock:
返回值:
tpInt64 TpSocket::sendTo(const tpUInt8 *data, tpUInt64 size, const TpString &addr, tpUInt16 port)
发送数据到指定地址和端口(UDP)...
发送数据到指定地址和端口(UDP)
参数:data: 发送数据缓存区
参数:size: 数据长度
参数:addr: 地址
参数:port: 端口
返回值:发送长度或错误码
tpInt64 TpSocket::recvFrom(tpUInt8 *data, tpUInt64 size, TpString &addr, tpUInt16 *port)
从指定端口和地址接收数据(UDP)...
从指定端口和地址接收数据(UDP)
参数:data: 接收的数据缓存区
参数:size: 最大接收长度
参数:addr: 数据来源地址
参数:port: 数据来源端口
返回值:接收长度或错误码
TpSocket * TpSocket::connectToHost(const TpString &addr, tpUInt16 port, tpBool block=TP_TRUE)
连接到目标地址和端口...
连接到目标地址和端口
参数:addr: 地址
参数:port: 端口
参数:block: 阻塞标志
返回值:
tpInt32 TpSocket::listen(tpInt32 size)
监听连接...
监听连接
参数:size:
返回值:
tpInt64 TpSocket::send(const tpUInt8 *data, tpUInt64 size)
发送数据(TCP)...
发送数据(TCP)
参数:data: 发送数据缓存区
参数:size: 数据长度
返回值:发送长度或错误码
tpInt64 TpSocket::recv(tpUInt8 *data, tpUInt64 size, tpInt32 flag=0)
接收数据(TCP)...
接收数据(TCP)
参数:data: 接收的数据缓存区
参数:size: 最大接收长度
参数:flag: 模式,可以不设置,默认为0
返回值:接收长度或错误码
TpSockfd TpSocket::getSocket()
获取socket连接文件描述符...
获取socket连接文件描述符
返回值:文件描述符
TpString TpSocket::getLocalAddress()
获取socket连接主机地址...
获取socket连接主机地址
返回值:地址
tpUInt16 TpSocket::getLocalPort()
获取socket连接主机端口...
获取socket连接主机端口
返回值:端口
TpString TpSocket::getPeerAddress()
获取远端主机地址...
获取远端主机地址
返回值:地址
tpUInt16 TpSocket::getPeerPort()
获取短短主机端口...
获取短短主机端口
返回值:端口
tpBool TpSocket::waitForBytesWritten(int msecs=10000)
设置写阻塞等待时间...
设置写阻塞等待时间
参数:msecs: ms
返回值:
tpBool TpSocket::waitForReadyRead(int msecs=10000)
设置读的等待时间...
设置读的等待时间
参数:msecs: ms
返回值:
