code: public static JoinPoint<Exception> fromTasks(Task<?,?>... tasks) {
  		JoinPoint<Exception> jp = new JoinPoint<>();
  		for (Task<?,?> task : tasks) jp.addToJoin(task.getOutput());
  		jp.start();
  		return jp;
  	}
docs: Shortcut method to create a JoinPoint waiting for the given tasks, <b>the JoinPoint is started by this method.</b>
  If any task has error or is cancelled, the join point is immediately unblocked, even other tasks are still pending.