parallel\Future::select

(0.8.0)

parallel\Future::selectResolution

Description

public static parallel\Future::select ( array &$resolving , array &$resolved , array &$errored ) : int

Shall wait until the first future value becomes available, removing the resolved value from resolving

public static parallel\Future::select ( array &$resolving , array &$resolved , array &$errored , string &$timedout , int $timeout ) : int

Shall wait until the first future value becomes available or until timeout is reached, removing the resolved value from resolving

Note:

If a value resolved it shall be placed in resolved, Futures that would throw \parallel\Exception shall be placed in errored, and Futures that have timed out shall be placed in timedout.

Parameters

resolving

Should contain Futures to be selected

resolved

Shall contain resolved Futures

errored

Shall contain errored Futures

timedout

Shall contain timedout Futures

timeout

Timeout, in microseconds

Return Values

Shall return the number of resolved, errored, and where used timedout futures.

Exceptions

Warning

Shall throw \parallel\Exception if arguments are invalid.