@Retention(value=RUNTIME)
@Target(value={PARAMETER,ANNOTATION_TYPE})
public @interface Direct
Struct
} parameter should be
backed by a persistent native memory block.
Without the @Direct
annotation, the native code will allocate a
temporary native memory block for the parameter, and free it immediately after
the call.
By using @Direct
, the native memory block is permanently associated
with the Struct
instance, and will remain allocated
for as long as the Struct
instance remains strongly referenced by java code.