class BackPressureSampleService {

	public CompletableFuture<Double> sampleTaskBackPressure(BackPressureSampleableTask task) {
		if (!task.isRunning()) {
			throw new IllegalStateException(
				String.format("Cannot sample task. Because the sampled task %s is not running.", task));
		}

		return sampleTaskBackPressure(
			checkNotNull(task),
			numSamples,
			new ArrayList<>(numSamples),
			new CompletableFuture<>());
	}

	  BackPressureSampleService(
			int numSamples,
			Time delayBetweenSamples,
			ScheduledExecutor scheduledExecutor);

}