code: public ParallelEngine setWaitMode(WaitMode mode, long timeout, TimeUnit unit) {
  		this.mode = mode;
  		this.timeout = timeout;
  		this.unit = unit;
  		return this;
  	}
docs: Sets the wait mode, the number of units and their scale before the wait
  for the background activities times out.
  
  @param mode
  the wait mode: whether it should wait for all background activities to
  complete or it will exit as soon as one of them is complete.
  @param timeout
  the number of time units (milliseconds, seconds...) to wait before timing
  out.
  @param unit
  the time unit used to express the timeout preiod (seconds, minutes...).
  @return
  the object itself, to enable method chaining.