class_docstr: The Client-side methods corresponding to the ray API. Delegates
  to the Client Worker that contains the connection to the ClientServer.
class_docstr_tok: ["The","Client-side","methods","corresponding","to","the","ray","API",".","Delegates","to","the","Client","Worker","that","contains","the","connection","to","the","ClientServer","."]
docstr: Attempts to retain a client object reference.
  
  Increments the reference count on the client side, to prevent
  the client worker from attempting to release the server reference.
  
  Args:
      id: The id of the reference to retain on the client side.
code: def call_retain(self, id: bytes) -> None:
      """Attempts to retain a client object reference.
  
      Increments the reference count on the client side, to prevent
      the client worker from attempting to release the server reference.
  
      Args:
          id: The id of the reference to retain on the client side.
      """
      return self.worker.call_retain(id)
  
imports: import json
  import logging
  from concurrent.futures import Future
  from typing import TYPE_CHECKING, Any, Callable, List, Optional, Union
  from ray._private import ray_option_utils
  from ray.util.client.runtime_context import _ClientWorkerPropertyAPI
label_desc: Use image node_id 8 for calling the _ClientAPI obj's underlying member method code with example usage: obj.call_retain(id) and returns: self