通道模板类 更多...
#include <Channel.hpp>
Public 成员函数 | |
| Channel (std::size_t capacity=1ull) | |
| 构造函数 | |
| ~Channel ()=default | |
| T | recv () |
| 从通道接收数据 | |
| void | send (const T &data) |
| 发送数据到通道 | |
| void | send (T &&data) |
| 发送数据到通道 | |
| bool | try_recv (T &data) |
| 尝试从通道接收数据 | |
| bool | try_send (const T &data) |
| 尝试发送数据到通道 | |
| bool | try_send (T &&data) |
| 尝试发送数据到通道 | |
|
inline |
构造函数
| capacity | 通道的容量,默认为1 |
|
default |
|
inline |
从通道接收数据
若通道为空,则线程会被阻塞,直到有数据到来
|
inline |
发送数据到通道
| data | 要发送的数据 |
若通道已满,则线程会被阻塞,直到有空余位置
|
inline |
|
inline |
尝试从通道接收数据
| data | 接收到的数据 |
若通道为空,则不会接收数据,并返回false
|
inline |
尝试发送数据到通道
| data | 要发送的数据 |
若通道已满,则不会发送数据,并返回false
|
inline |