container/src/main/java/com/streamsets/datacollector/runner/RunnerPool.java
public void returnRunner(T runner) throws PipelineRuntimeException {
    validateNotDestroyed();

    queue.add(new QueueItem<>(runner));
    runtimeStats.setAvailableRunners(queue.size());
    histogram.update(queue.size());
  }
public void returnRunner(T runner) throws PipelineRuntimeException {
    validateNotDestroyed();

    queue.add(new QueueItem<>(runner));
    runtimeStats.setAvailableRunners(queue.size());
    histogram.update(queue.size());
  }
public void returnRunner ( T runner ) throws PipelineRuntimeException { validateNotDestroyed ( ) ; queue . add ( new QueueItem <> ( runner ) ) ; runtimeStats . setAvailableRunners ( queue . size ( ) ) ; histogram . update ( queue . size ( ) ) ; }
Return given runner back to the pool.

@param runner Runner to be returned
Return given runner back to the pool .