程序包 cn.wjybxx.btree

类 TaskInlineHelper<T>

java.lang.Object
cn.wjybxx.btree.TaskInlineHelper<T>
直接已知子类:
ParallelChildHelper

public class TaskInlineHelper<T> extends Object
内联工具类。 1.只有不能被内联的节点,才需要该工具类。 2.实现内联优化时,应当在Task.onChildRunning(Task, boolean)时开启内联和Task.onChildCompleted(Task)时停止内联。 3.在Task.exit()时也调用一次停止内联可避免内存泄漏(不必要的引用)。 4.在Task.onEventImpl(Object)时应当尝试将事件转发给被内联的子节点,可使用工具方法onEvent(Object, Task).

ps:TaskEntry就是标准实现。

作者:
wjybxx date - 2024/7/24
  • 字段详细资料

    • enableInline

      public static boolean enableInline
      是否启用内联
  • 构造器详细资料

    • TaskInlineHelper

      public TaskInlineHelper()
  • 方法详细资料

    • getInlinedChild

      public final Task<T> getInlinedChild()
      获取被内联运行的子节点
    • stopInline

      public final void stopInline()
      取消内联
    • inlineChild

      public final void inlineChild(Task<T> runningChild)
      尝试内联运行中的子节点
    • onEvent

      public final void onEvent(Object event, @Nullable Task<T> source)
      转发事件的工具方法 -- 编写代码时使用该方法,编写完毕后点重构内联(保留该方法)