default value set during initialization or with
        "_set_rpc_timeout" is used.
Returns:
      Returns a "Future" object that can be waited on. When completed,
      the return value of "func" on "args" and "kwargs" can be
      retrieved from the "Future" object.
Warning:
 Using GPU tensors as arguments or return values of "func" is not
 supported since we don't support sending GPU tensors over the
 wire. You need to explicitly copy GPU tensors to CPU before using
 them as arguments or return values of "func".

Warning:
 The "rpc_async" API does not copy storages of argument tensors
 until sending them over the wire, which could be done by a
 different thread depending on the RPC backend type. The caller
 should make sure that the contents of those tensors stay intact
 until the returned "Future" completes.

Example::
      Make sure that "MASTER_ADDR" and "MASTER_PORT" are set properly