NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
pipe类 参考

管道类 更多...

#include <pipe.hpp>

Public 成员函数

 pipe () noexcept
 默认构造函数
 pipe (bool inheritable)
 创建管道
 ~pipe ()
 析构函数
 pipe (pipe &&other) noexcept
 移动构造函数
pipeoperator= (pipe &&other) noexcept
 移动赋值运算符
int read (void *buffer, size_t size) noexcept
 从管道读取数据
NEFORCE_NODISCARD string read_available ()
 从管道读取所有可用数据(非阻塞)
int write (const void *data, size_t size) noexcept
 向管道写入数据
void close_read () noexcept
 关闭管道的读端
void close_write () noexcept
 关闭管道的写端
void close () noexcept
 关闭管道的所有端
NEFORCE_NODISCARD bool is_valid () const noexcept
 检查管道是否有效
NEFORCE_NODISCARD native_handle_type native_read_handle () const noexcept
 获取读端句柄
NEFORCE_NODISCARD native_handle_type native_write_handle () const noexcept
 获取写端句柄
NEFORCE_NODISCARD native_handle_type detach_read_handle () noexcept
 分离读端句柄(调用者负责关闭)
NEFORCE_NODISCARD native_handle_type detach_write_handle () noexcept
 分离写端句柄(调用者负责关闭)

详细描述

管道类

支持管道的创建、读写和关闭。

在文件 pipe.hpp50 行定义.

构造及析构函数说明

◆ pipe() [1/2]

pipe::pipe ( )
inlinenoexcept

默认构造函数

创建一个未初始化的管道对象。

在文件 pipe.hpp68 行定义.

被这些函数引用 operator=(), pipe() , 以及 ~pipe().

◆ pipe() [2/2]

pipe::pipe ( bool inheritable)
explicit

创建管道

参数
inheritable子进程是否可继承(Windows)
异常
pipe_exception创建失败时抛出

◆ ~pipe()

pipe::~pipe ( )

析构函数

自动关闭管道句柄。

引用了 pipe().

成员函数说明

◆ is_valid()

NEFORCE_NODISCARD bool pipe::is_valid ( ) const
noexcept

检查管道是否有效

返回
管道是否已创建且未关闭

引用了 is_valid().

被这些函数引用 is_valid().

◆ read()

int pipe::read ( void * buffer,
size_t size )
noexcept

从管道读取数据

参数
buffer缓冲区
size缓冲区大小
返回
实际读取的字节数,-1表示错误

引用了 size().

◆ read_available()

NEFORCE_NODISCARD string pipe::read_available ( )

从管道读取所有可用数据(非阻塞)

返回
读取的数据字符串

◆ write()

int pipe::write ( const void * data,
size_t size )
noexcept

向管道写入数据

参数
data要写入的数据
size数据大小
返回
实际写入的字节数,-1表示错误

引用了 data() , 以及 size().


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