rpcNsMgmtSetExpAge 函数 (rpcnsi.h)

RpcNsMgmtSetExpAge 函数修改应用程序名称服务数据的本地副本的全局过期期限。

注意 Windows Vista 及更高版本的操作系统不支持此功能。
 

语法

RPC_STATUS RpcNsMgmtSetExpAge(
  unsigned long ExpirationAge
);

parameters

ExpirationAge

指向默认过期期限(以秒为单位)的指针。 此值由所有名称服务 -next 操作使用。 过期期限为 0 会导致本地名称服务数据立即更新。

若要将过期期限重置为 RPC 分配的默认值两小时,请将值指定为 RPC_C_NS_DEFAULT_EXP_AGE。

返回值

含义
RPC_S_OK
调用成功。
RPC_S_NAME_SERVICE_UNAVAILABLE
名称服务不可用。
 
注意 有关有效错误代码的列表,请参阅 RPC 返回值
 

注解

RpcNsMgmtSetExpAge 函数修改应用程序的全局过期期限。 过期期限是名称服务属性的本地数据副本在应用程序对属性的请求需要更新本地副本之前存在的时间量。 当应用程序开始运行时,RPC 运行时库会将默认过期期限指定为两小时。 默认值对应用程序是全局的。 通常,应避免使用 RpcNsMgmtSetExpAge。 相反,应依赖于默认过期期限。

指针下一操作使用过期期限, (从名称服务属性) 读取数据。 下一个操作通常从查找应用程序请求的属性数据的本地副本开始。 在没有本地副本的情况下,下一个操作会从名称服务数据库中创建一个具有新属性数据的。 如果本地副本已存在,则操作会将其实际使用期限与应用程序使用的过期期限进行比较。 如果实际期限超过过期期限,该操作会自动尝试使用新的属性数据更新本地副本。 如果无法更新,旧本地数据将保留到位,下一个操作将失败,返回RPC_S_NAME_SERVICE_UNAVAILABLE状态代码。

将过期期限设置为较小的值会导致指针后续操作频繁更新应用程序请求的任何名称服务属性的本地数据。 例如,将过期期限设置为 0 会强制所有后续操作更新应用程序请求的 name-service 属性的本地数据。 因此,设置较短的过期期限可能会给应用程序造成性能问题,并增加网络流量。 此外,如果应用程序使用远程名称服务服务器,则较短的过期期限可能会对所有应用程序的网络性能产生负面影响。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 rpcnsi.h (包括 Rpc.h)
Library Rpcns4.lib
DLL Rpcns4.dll

请参阅

RpcNsMgmtHandleSetExpAge