streams.
  Returns:
     The value held by this "Future". If the function (callback or
     RPC) creating the value has thrown an error, this "wait"
     method will also throw an error.

  Return type:
     *T*

torch.futures.collect_all(futures)
Collects the provided "Future" objects into a single combined
   "Future" that is completed when all of the sub-futures are
   completed.
Parameters:
      futures (list) -- a list of "Future" objects.
Returns:
      Returns a "Future" object to a list of the passed in Futures.
Return type:
      Future[List[Future]]
Example::
      >>> fut0 = torch.futures.Future()
      >>> fut1 = torch.futures.Future()
      >>> fut = torch.futures.collect_all([fut0, fut1])
      >>> fut0.set_result(0)
      >>> fut1.set_result(1)
      >>> fut_list = fut.wait()
      >>> print(f"fut0 result = {fut_list[0].wait()}")
      fut0 result = 0
      >>> print(f"fut1 result = {fut_list[1].wait()}")
      fut1 result = 1