侦听客户端调用
服务器应用程序注册其接口、创建必要的绑定信息并注册其终结点后,即可开始侦听来自客户端程序的远程过程调用。
若要侦听远程过程调用,服务器程序必须调用 RpcServerListen,如以下代码片段所示:
RPC_STATUS status;
status = RpcServerListen(
1,
RPC_C_LISTEN_MAX_CALLS_DEFAULT,
0);
RPC 服务器具有一个或多个线程,用于接收客户端调用并将其传递到已注册接口中的例程。 RpcServerListen 函数的第一个参数是要创建的最小线程数。 参数只是一个提示;RPC 运行时可以选择忽略它。
RpcServerListen 的第二个参数是要处理的并发远程过程调用的最大数目。 如果希望应用程序使用默认的最大值,请将RPC_C_LISTEN_MAX_CALLS_DEFAULT作为此参数的值传递。
DCE 规范要求 RpcServerListen 继续运行,直到收到停止信号。 此函数的 Microsoft 扩展之一是允许它开始侦听并立即返回。 如果希望应用程序使用默认 DCE 行为,请将第三个参数设置为零。 有关详细信息,请参阅 RpcServerListen、 RpcMgmtStopServerListening 和 RpcMgmtWaitServerListen 。