class_docstr: Encapsulates the future value of a retriable async gRPC request.
  
  Abstracts over the set of futures returned by a set of gRPC calls
  comprising a single logical gRPC request with retries.  Communicates
  to the caller the result or exception resulting from the request.
  
  Args:
    completion_event: The constructor should provide a `threding.Event` which
      will be used to communicate when the set of gRPC requests is complete.
code: def _set_active_future(self, grpc_future):
      if grpc_future is None:
          raise RuntimeError(
              "_set_active_future invoked with grpc_future=None."
          )
      with self._active_grpc_future_lock:
          self._active_grpc_future = grpc_future
  
imports: import enum
  import functools
  import random
  import threading
  import time
  import grpc
  from tensorboard import version
  from tensorboard.util import tb_logging
label_desc: Use image node_id 2 for calling the AsyncCallFuture obj's underlying member method code with example usage: obj._set_active_future(grpc_future) without return types