acl
3.5.3.0
fiber_cond.hpp
浏览该文件的文档.
1
#pragma once
2
#include "
fiber_cpp_define.hpp
"
3
4
struct
ACL_FIBER_COND
;
5
6
namespace
acl
{
7
8
class
fiber_event;
9
10
/**
11
* 可用在协程之间,线程之间,协程与线程之间的条件变量
12
*/
13
class
FIBER_CPP_API
fiber_cond
14
{
15
public
:
16
fiber_cond
(
void
);
17
~
fiber_cond
(
void
);
18
19
/**
20
* 等待条件变量事件被触发
21
* @param event {fiber_event&}
22
* @param timeout {int} 超时等待时间(毫秒)
23
* @return {bool} 成功时返回 true,否则返回 false 表示超时
24
*/
25
bool
wait(
fiber_event
& event,
int
timeout = -1);
26
27
/**
28
* 唤醒在条件变量上的等待者,如果没有等待者则直接返回,运行行为和
29
* 线程条件变量类似
30
* @return {bool} 成功返回 true,否则返回 false 表示失败
31
*/
32
bool
notify(
void
);
33
34
public
:
35
/**
36
* 返回 C 版本的条件变量对象
37
* @return {ACL_FIBER_COND*}
38
*/
39
ACL_FIBER_COND
*
get_cond
(
void
)
const
40
{
41
return
cond_;
42
}
43
44
private
:
45
ACL_FIBER_COND
* cond_;
46
47
fiber_cond
(
const
fiber_cond
&);
48
void
operator=(
const
fiber_cond
&);
49
};
50
51
}
52
fiber_cpp_define.hpp
acl
Definition:
acl_cpp_init.hpp:4
acl::fiber_cond
Definition:
fiber_cond.hpp:13
FIBER_CPP_API
#define FIBER_CPP_API
Definition:
fiber_cpp_define.hpp:34
ACL_FIBER_COND
struct ACL_FIBER_COND ACL_FIBER_COND
Definition:
fiber_cond.h:17
acl::fiber_cond::get_cond
ACL_FIBER_COND * get_cond(void) const
Definition:
fiber_cond.hpp:39
acl::fiber_event
Definition:
fiber_event.hpp:12
include
fiber_cpp
fiber
fiber_cond.hpp
生成于 2021年 九月 10日 星期五 11:14:45 , 为 acl使用
1.8.15