Interface SchedulerCallback

All Superinterfaces:
FunctionPointer
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface @Generated("org.javagi.JavaGI") public interface SchedulerCallback extends FunctionPointer

Functional interface declaration of the SchedulerCallback callback.

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    run(long deadline)
    This function is called incrementally to process additional background work.
    Creates a native function pointer to the upcall(long, MemorySegment) method.
    default int
    upcall(long deadline, MemorySegment userData)
    The upcall method is called from native code.
  • Method Details

    • run

      boolean run(long deadline)

      This function is called incrementally to process additional background work. A deadline is provided which can be checked using GLib#getMonotonicTime so that additional work can be processed each frame.

      This is useful for situations where you are incrementally performing background work such as spell checking or semantic syntax highlighting.

      Parameters:
      deadline - the time the callback should complete by
      Returns:
      true if there is more work to process, otherwise false and the handler is unregistered.
      Since:
      5.2
    • upcall

      default int upcall(long deadline, MemorySegment userData)
      The upcall method is called from native code. The parameters are marshaled and run(long) is executed.
    • toCallback

      default MemorySegment toCallback(Arena arena)
      Creates a native function pointer to the upcall(long, MemorySegment) method.
      Specified by:
      toCallback in interface FunctionPointer
      Parameters:
      arena - the arena in which the function pointer is allocated
      Returns:
      the native function pointer