java.lang.Object
java.lang.invoke.CallSite
java.lang.invoke.MutableCallSite
jdk.dynalink.support.AbstractRelinkableCallSite
- すべての実装されたインタフェース:
RelinkableCallSite
- 直系の既知のサブクラス:
ChainedCallSite,SimpleRelinkableCallSite
public abstract class AbstractRelinkableCallSite extends MutableCallSite implements RelinkableCallSite
MutableCallSiteとしてのRelinkableCallSiteの基本的な実装。 コンストラクタで渡されたCallSiteDescriptorを持ち、initialize(MethodHandle)メソッドの正しい実装を提供します。 サブクラスは、RelinkableCallSite.relink(GuardedInvocation, MethodHandle)およびRelinkableCallSite.resetAndRelink(GuardedInvocation, MethodHandle)メソッドを提供する必要があります。 -
コンストラクタのサマリー
コンストラクタ修飾子コンストラクタ説明protectedAbstractRelinkableCallSite(CallSiteDescriptor descriptor) 新しい抽象的な再リンク可能なコール・サイトを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明この呼び出しサイトの記述子を返します。voidinitialize(MethodHandle relinkAndInvoke) 再リンク呼び出しメソッドのハンドルを設定して、再リンク可能な呼び出しサイトを初期化するために動的リンカーによって呼び出されます。クラス java.lang.invoke.MutableCallSiteで宣言されたメソッド
dynamicInvoker, getTarget, setTarget, syncAllクラス java.lang.Objectで宣言されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitインタフェース jdk.dynalink.RelinkableCallSiteで宣言されたメソッド
relink, resetAndRelink
-
コンストラクタの詳細
-
AbstractRelinkableCallSite
protected AbstractRelinkableCallSite(CallSiteDescriptor descriptor) 新しい抽象的な再リンク可能なコール・サイトを作成します。- パラメータ:
descriptor-getDescriptor()から返されるこの呼び出しサイトの記述子。 コール・サイトCallSite.type()は記述子CallSiteDescriptor.getMethodType()と等しくなります。- 例外:
NullPointerException-descriptorがnullの場合。
-
-
メソッドの詳細
-
getDescriptor
public CallSiteDescriptor getDescriptor()インタフェースからコピーされた説明:RelinkableCallSiteこの呼び出しサイトの記述子を返します。- 定義:
- インタフェース
RelinkableCallSite内のgetDescriptor - 戻り値:
- この呼び出しサイトの記述子。
-
initialize
public void initialize(MethodHandle relinkAndInvoke) インタフェースからコピーされた説明:RelinkableCallSite再リンク呼び出しメソッドのハンドルを設定して、再リンク可能な呼び出しサイトを初期化するために動的リンカーによって呼び出されます。 コール・サイトの実装では、このメソッド・ハンドルをCallSite.setTarget(MethodHandle)を使用してターゲットとして設定することになっています。 Relink-and-invokeは、DynamicLinker.link(RelinkableCallSite)によって設定された初期メソッド・ハンドルであり、コール・サイトがその引数に基づいて最初の起動時に適切なターゲットに再リンクされ、リンクされたターゲットが(したがって、名前)によって呼び出されます。 このリンク・プロトコルは、呼び出しサイトが実際の引数で呼び出されるまでリンクを効果的に遅延させるので、呼び出し側の静的メソッドの型だけでなく、それらの引数に基づいてリンカーが微妙なリンクを決定できるようになります。- 定義:
- インタフェース
RelinkableCallSite内のinitialize - パラメータ:
relinkAndInvoke- Dynalinkが提供する再リンクおよび呼び出しメソッド・ハンドル。
-