acl
3.5.3.0
|
#include <rpc.hpp>
Public 成员函数 | |
rpc_request (void) | |
virtual | ~rpc_request (void) |
Public 成员函数 继承自 acl::ipc_request | |
ipc_request () | |
virtual | ~ipc_request () |
Protected 成员函数 | |
virtual void | rpc_onover (void)=0 |
virtual void | rpc_wakeup (void *ctx) |
virtual void | rpc_run (void)=0 |
void | rpc_signal (void *ctx) |
bool | cond_wait (int timeout=-1) |
bool | cond_wait_timeout () const |
bool | cond_signal (void) |
Protected 成员函数 继承自 acl::acl::noncopyable | |
noncopyable () | |
~noncopyable () | |
友元 | |
class | rpc_client |
class | rpc_service |
acl::rpc_request::rpc_request | ( | void | ) |
|
virtual |
|
protected |
当子线程调用 cond_wait 时,在主线程中调用本方法通知子线程 “醒来”
|
protected |
当子线程调用 rpc_signal 给主线程后,调用本方法可以等待 主线程发来下一步指令
timeout | {int} 等待超时时间(毫秒),当该值为 0 时 则采用非阻塞等待模式,当该值为 < 0 时,则采用完全阻塞 等待模式(即一直等到主线程发送 cond_signal 通知),当该 值 > 0 时,则等待的最大超时时间为 timeout 毫秒 |
|
inlineprotected |
|
protectedpure virtual |
在主线程中被调用,子类必须实现此接口, 当子线程处理完请求任务后该接口将被调用,所以该类对象只能 是当本接口调用后才能被释放,禁止在调用本接口前释放本类对象
|
protectedpure virtual |
在子线程中被调用,子类必须实现此接口,用于处理具体任务
|
protected |
在子线程中被调用,内部自动支持套接口或 _WIN32 窗口消息 子类实例的 rpc_run 方法中可以多次调用此方法向主线程的 本类实例发送消息,主线程中调用本对象 rpc_wakeup 方法
ctx | {void*} 传递的参数指针,一般应该是动态地址 比较好,这样可以避免同一个参数被重复覆盖的问题 |
|
inlineprotectedvirtual |
|
friend |