模块  jdk.dynalink
软件包  jdk.dynalink.linker

Interface GuardingDynamicLinker

    • 方法详细信息

      • getGuardedInvocation

        GuardedInvocation getGuardedInvocation​(LinkRequest linkRequest,
                                               LinkerServices linkerServices)
                                        throws 异常
        使用调用站点上的指定参数创建适用于特定调用的受保护调用。
        参数
        linkRequest - 描述链接特定调用请求的对象
        linkerServices - 链接器服务
        结果
        带有适合参数的方法句柄的保护调用,以及如果失败则应触发重新链接的保护条件。 如果无法解析调用,则必须返回null。 如果返回的调用是无条件的(实际上非常罕见),则返回值中的guard可以为null。 调用也可以有任意数量的切换点用于链接的异步失效,以及Throwable子类,它描述了一个预期的异常条件,它也触发了重新链接(通常它更快依赖于偶然但预期的ClassCastException不是总是评估instanceof警卫)。 虽然链接器必须生成一个参数类型与链接请求的调用站点描述符中的参数类型匹配的调用,但它不应该尝试匹配调用站点预期的返回类型,除非它只能使用既不会失去精度的转换也没有规模,请参阅LinkerServices.asTypeLosslessReturn(MethodHandle, MethodType)进一步解释。
        异常
        异常 - 如果操作因任何原因失败