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

Interface LinkRequest

  • 所有已知实现类:
    SimpleLinkRequest

    public interface LinkRequest
    表示在特定呼叫站点链接特定调用的请求。 将构造这些请求的实例并将其传递给尝试链接呼叫站点的DynamicLinker管理的所有GuardingDynamicLinker对象。
    • 方法详细信息

      • getCallSiteDescriptor

        CallSiteDescriptor getCallSiteDescriptor()
        返回要链接的调用站点的调用站点描述符。
        结果
        被链接的呼叫站点的呼叫站点描述符。
      • getArguments

        Object[] getArguments()
        返回要链接的调用的参数。 返回的数组必须是克隆; 对它的修改不得影响此请求中的参数。
        结果
        调用的参数被链接。
      • getReceiver

        Object getReceiver()
        返回被链接的调用的第一个参数; 这通常是接收器对象。 这是getArguments()[0]的简写,它也避免了克隆参数数组。
        结果
        接收者对象。
      • isCallSiteUnstable

        boolean isCallSiteUnstable()
        如果调用站点被视为不稳定,则返回true,即,它已重新链接的次数超过DynamicLinkerFactory.setUnstableRelinkThreshold(int)中指定的次数 链接器应该使用它作为提示,以便更好地生成更稳定的链接(其保护失败的频率更低),即使该假设导致操作的效率较低的版本被链接。 但这只是一个提示,并且允许链接器忽略此属性。
        结果
        如果呼叫站点被视为不稳定,则为true。
      • replaceArguments

        LinkRequest replaceArguments​(CallSiteDescriptor callSiteDescriptor,
                                     Object... arguments)
        返回与此呼叫站点描述符相同的请求,并将参数替换为指定的请求。
        参数
        callSiteDescriptor - 新的呼叫站点描述符
        arguments - 新参数
        结果
        a new request identical to this one, except with the call site descriptor and arguments replaced with the specified ones.