本页介绍 RPC 调用的异步管道状态。
IN 管道
客户端行为
州 | 状态名称 | 行动 |
---|---|---|
C | 进行呼叫 | 使 RPC
|
P | 推 | 进行推送
|
WS | 等待发送 | 等待通知
|
NP | Null 推送 | 推送 0 字节(null 推送)
|
能 | 取消呼叫 | 调用 RpcAsyncCancelCall转到 WComp |
WComp | 等待完成 | 等待接收 notificationCall-complete 通知。 转到Comp |
Comp | 完成 | 问题 RpcAsyncCompleteCall转到结束 |
结束 |
服务器行为
州 | 状态名称 | 行动 |
---|---|---|
D | 遣 | 调用由 RPC 运行时转到 P 调度 若要失败(在 RPC 线程上执行时):引发异常;转到 End 正常失败:转到 A |
P | 拉 | 进行拉取
|
WP | 等待拉取 | 等待通知
|
一个 | 中止呼叫 | 调用 RpcAsyncAbortCall转到结束 |
Comp | 完成 | 调用 RpcAsyncCompleteCall转到结束 |
结束 |
OUT 管道
客户端行为
州 | 状态名称 | 行动 |
---|---|---|
C | 进行呼叫 | 使 RPC
|
P | 拉 | 进行拉取
|
WP | 等待拉取 | 等待通知
|
能 | 取消呼叫 | 调用 RpcAsyncCancelCall转到 WComp |
WComp | 等待完成 | 等待通知。 应收到呼叫完成通知。 转到Comp |
Comp | 完成 | 问题 RpcAsyncCompleteCall转到结束 |
结束 |
服务器行为
州 | 状态名称 | 行动 |
---|---|---|
D | 遣 | 调用由 RPC 运行时转到 P 调度 若要失败(在 RPC 线程上执行时):引发异常;转到 End 正常失败:转到 A |
P | 推 | 进行推送
|
WP | 等待推送 | 等待通知
|
NP | Null 推送 | 推送 0 字节
|
WNP | 等待 Null 推送 | 等待通知
|
一个 | 中止呼叫 | 调用 RpcAsyncAbortCall;转到 End |
Comp | 完成 | 问题 RpcAsyncCompleteCall;转到 End |
结束 |
IN-OUT 管道
客户端行为
州 | 状态名称 | 行动 |
---|---|---|
C | 进行呼叫 | 使 RPC
|
PS | 推 | 进行推送
|
WS | 等待发送 | 等待通知
|
NP | Null 推送 | 推送 0 字节(null 推送)
|
PL | 拉 | 进行拉取
|
WPL | 等待拉取 | 等待通知
|
能 | 取消呼叫 | 调用 RpcAsyncCancelCall转到 WComp |
WComp | 等待完成 | 等待通知。 应收到 CallComplete 通知。 转到Comp |
Comp | 完成 | 问题 RpcAsyncCompleteCall转到结束 |
结束 |
服务器行为
州 | 状态名称 | 行动 |
---|---|---|
D | 遣 | RPC runtimeGo 将调用调度到 PL 若要失败(在 RPC 线程上执行时):引发异常;转到 End 正常失败:转到 A |
PL | 拉 | 进行拉取
|
WPL | 等待拉取 | 等待通知
|
PS | 推 | 进行推送
|
WPS | 等待推送 | 等待通知
|
NP | Null 推送 | 推送 0 字节
|
WNP | 等待 Null 推送 | 等待通知
|
一个 | 中止呼叫 | 调用 RpcAsyncAbortCall;转到 End |
Comp | 完成 | 问题 RpcAsyncCompleteCall;转到 End |
结束 |