RMVL  2.4.0-dev
Robotic Manipulation and Vision Library
载入中...
搜索中...
未找到
rm::async::StreamSocket类 参考

rm::async::Acceptor 建立的流式 Socket 异步会话 更多...

#include <rmvl/io/socket.hpp>

类 rm::async::StreamSocket 继承关系图:
rm::async::StreamSocket 的协作图:

class  SocketReadAwaiter
 流式 Socket 异步读等待器 更多...
class  SocketWriteAwaiter
 流式 Socket 异步写等待器 更多...

Public 成员函数

SocketReadAwaiter read ()
 异步读取已连接的 Socket 中的数据
SocketWriteAwaiter write (std::string_view data)
 异步写入数据到已连接的 Socket 中
Public 成员函数 继承自 rm::StreamSocket
bool invalid () const noexcept
 会话是否失效
template<typename SockOpt>
void setOption (const SockOpt &opt)
 设置 Socket 选项
std::string read () noexcept
 同步读取已连接的 Socket 中的数据(阻塞)
bool write (std::string_view data) noexcept
 同步写入数据到已连接的 Socket 中(阻塞)

额外继承的成员函数

Protected 属性 继承自 rm::StreamSocket
SocketFd _fd {INVALID_SOCKET_FD}
 会话文件描述符

详细描述

rm::async::Acceptor 建立的流式 Socket 异步会话

成员函数说明

◆ read()

SocketReadAwaiter rm::async::StreamSocket::read ( )
inline

异步读取已连接的 Socket 中的数据

// 使用示例
auto str = co_await socket.read();
定义 str.hpp:19
返回
使用 std::string 存储的读取到的数据

◆ write()

SocketWriteAwaiter rm::async::StreamSocket::write ( std::string_view data)
inline

异步写入数据到已连接的 Socket 中

// 使用示例
bool success = co_await socket.write("Hello, World!");
参数
[in]data待写入的数据
返回
是否写入成功

该类的文档由以下文件生成: