public final class NativeClosureFactory<T>
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
(package private) class |
NativeClosureFactory.ClosureReference |
Modifier and Type | Field and Description |
---|---|
private com.kenai.jffi.CallContext |
callContext |
private NativeClosureProxy.Factory |
closureProxyFactory |
private java.util.concurrent.ConcurrentMap<java.lang.Integer,NativeClosureFactory.ClosureReference> |
closures |
private com.kenai.jffi.ClosureMagazine |
currentMagazine |
private java.util.concurrent.ConcurrentLinkedQueue<NativeClosurePointer> |
freeQueue |
private Runtime |
runtime |
Modifier | Constructor and Description |
---|---|
protected |
NativeClosureFactory(Runtime runtime,
com.kenai.jffi.CallContext callContext,
NativeClosureProxy.Factory closureProxyFactory) |
Modifier and Type | Method and Description |
---|---|
(package private) NativeClosurePointer |
allocateClosurePointer() |
private void |
expunge(NativeClosureFactory.ClosureReference ref,
java.lang.Integer key) |
(package private) NativeClosureFactory.ClosureReference |
getClosureReference(java.lang.Object callable) |
(package private) NativeClosurePointer |
newClosure(java.lang.Object callable,
java.lang.Integer key) |
(package private) static <T> NativeClosureFactory |
newClosureFactory(Runtime runtime,
java.lang.Class<T> closureClass,
SignatureTypeMapper typeMapper,
AsmClassLoader classLoader) |
(package private) NativeClosureFactory.ClosureReference |
newClosureReference(java.lang.Object callable,
java.lang.Integer key) |
private void |
recycle(NativeClosurePointer ptr) |
private final Runtime runtime
private final java.util.concurrent.ConcurrentMap<java.lang.Integer,NativeClosureFactory.ClosureReference> closures
private final com.kenai.jffi.CallContext callContext
private final NativeClosureProxy.Factory closureProxyFactory
private final java.util.concurrent.ConcurrentLinkedQueue<NativeClosurePointer> freeQueue
private com.kenai.jffi.ClosureMagazine currentMagazine
protected NativeClosureFactory(Runtime runtime, com.kenai.jffi.CallContext callContext, NativeClosureProxy.Factory closureProxyFactory)
static <T> NativeClosureFactory newClosureFactory(Runtime runtime, java.lang.Class<T> closureClass, SignatureTypeMapper typeMapper, AsmClassLoader classLoader)
private void expunge(NativeClosureFactory.ClosureReference ref, java.lang.Integer key)
private void recycle(NativeClosurePointer ptr)
NativeClosurePointer allocateClosurePointer()
NativeClosurePointer newClosure(java.lang.Object callable, java.lang.Integer key)
NativeClosureFactory.ClosureReference newClosureReference(java.lang.Object callable, java.lang.Integer key)
NativeClosureFactory.ClosureReference getClosureReference(java.lang.Object callable)