docs: @Handler(priority = -10000)
      public void onStop(Stop event) throws InterruptedException {
          synchronized (this) {
              if (runner == null) {
                  return;
              }
              runner.interrupt();
              synchronized (this) {
                  if (registered) {
                      unregisterAsGenerator();
                      registered = false;
                  }
              }
              runner = null;
          }
      }