public synchronized AsyncFence include(CompletableFuture<?> future) {
		if (ready != null) {
			throw new IllegalStateException("Fence already ready");
		}
		participants.add(future);
		return this;
	}
Include a participant with this fence

The result of the participating future is ignored implicitly. If the result is needed, it
must be consumed out of band, e.g., by using {@link CompletableFuture#thenAccept(Consumer)}:

<pre>
fence.include(process(entry).thenAccept(result::addTo));
</pre>

Calling this method after {@link #ready()} will yield undefined results.

@param future the participant to add
@return this fence
Ghidra/Framework/Generic/src/main/java/ghidra/async/AsyncFence.java