Class ClosurePool.Handle

    • Constructor Detail

      • Handle

        Handle​(ClosurePool.Magazine.Slot slot,
               ClosurePool.MagazineHolder holder)
        Creates a new Handle to lifecycle manager the native closure.
        Parameters:
        slot - THe magazine slot this handle belongs to
        holder - The magazine holder containing this handle
    • Method Detail

      • getAddress

        public long getAddress()
        Description copied from interface: Closure.Handle
        Gets the native code address of the closure. This can be passed into a native function that takes a function pointer.
        Specified by:
        getAddress in interface Closure.Handle
        Returns:
        The native address of the closure code.
      • setAutoRelease

        public void setAutoRelease​(boolean autorelease)
        Description copied from interface: Closure.Handle
        Sets whether the closure memory should be released when the Handle is garbage collected or not.
        Specified by:
        setAutoRelease in interface Closure.Handle
        Parameters:
        autorelease - If true, the closure memory is automatically managed, else the closure memory must be explicitly freed.
      • free

        @Deprecated
        public void free()
        Deprecated.
        Specified by:
        free in interface Closure.Handle
      • dispose

        public void dispose()
        Description copied from interface: Closure.Handle
        Releases the closure memory back to the operating system. Although the closure trampoline memory will normally be released when the Handle is garbage collected, this may not happen for some time, and is non-deterministic. This allows explicit control over memory reclamation.
        Specified by:
        dispose in interface Closure.Handle