protected JobPushProcessor(TaskTrackerApplication application) {
    super(application);
    this.remotingClient = application.getRemotingClient();
    retryScheduler =
        new RetryScheduler<TaskTrackerJobResult>(application, 3) {
          @Override
          protected boolean isRemotingEnable() {
            return remotingClient.isServerEnable();
          }

          @Override
          protected boolean retry(List<TaskTrackerJobResult> results) {
            return retrySendJobResults(results);
          }
        };
    retryScheduler.setName("JobPush");
    retryScheduler.start();

    // 线程安全的
    jobRunnerCallback = new JobRunnerCallback();
  }