You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Recently some thought has gone into futures that eternally return Ready and thus never yield to the executor (#2047, #2053, #2130). Particularly concerned are combinators and collections. FuturesUnordered has already been updated to yield every so often.
JoinHandle is another collection that might never yield. Should we implement it with FuturesUnordered under the hood or should we add some counter to the implementation?
The text was updated successfully, but these errors were encountered:
Using FuturesUnordered under the hood would make JoinAll itself pretty pointless, the only advantage it has over using FuturesUnordered is potentially lower overhead when used for a low number of futures (though I don't know if this has ever been benchmarked).
Unlike FuturesUnordered and Shared, JoinAll doesn't intercept the Waker, so it will not encounter the same issue of never yielding. It will poll each sub-future at most once per poll.
Recently some thought has gone into futures that eternally return Ready and thus never yield to the executor (#2047, #2053, #2130). Particularly concerned are combinators and collections.
FuturesUnordered
has already been updated to yield every so often.JoinHandle
is another collection that might never yield. Should we implement it withFuturesUnordered
under the hood or should we add some counter to the implementation?The text was updated successfully, but these errors were encountered: