[concurrency-interest] map over j.u.c.CompletableFuture with strict threading semantics
viktor.klang at gmail.com
Fri Oct 20 10:52:43 EDT 2017
In general this is not possible, nor desirable, since completion is likely
to happen *before* a transformation is added.
However, there is nothing technical which prevents you to create an
implementation of CompletionStage which stores a reference to the Executor
to be used, and runs transformations which are applied to it on that
Executor unless some other Executor is specified.
On Oct 20, 2017 09:41, "Dimitar Georgiev" <dimitar.georgiev.bg at gmail.com>
Sorry if this has already been discussed.
I need to implement the following function:
public static <A, B> CompletableFuture<B> map(CompletableFuture<A>
upstream, Function<A, B> f);
It's pretty apparent what the function does. However, it has the
requirement that f() be always executed in the thread where upstream
is completed. (That is, if upstream is completed non-exceptionally,
since if it was not, f will not be called so there is no threading
semantics concerning f)
Is this possible with j.u.c.CompletableFuture?
Concurrency-interest mailing list
Concurrency-interest at cs.oswego.edu
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Concurrency-interest