class_docstr: Base class for Reverb adders.
class_docstr_tok: ["Base","class","for","Reverb","adders","."]
code: def __del__(self):
      if self.__writer is not None:
          timeout_ms = 10_000
          # Try flush all appended data before closing to avoid loss of experience.
          try:
              self.__writer.flush(0, timeout_ms=timeout_ms)
          except reverb.DeadlineExceededError as e:
              logging.error(
                  "Timeout (%d ms) exceeded when flushing the writer before "
                  "deleting it. Caught Reverb exception: %s",
                  timeout_ms,
                  str(e),
              )
          self.__writer.close()
          self.__writer = None
  
imports: import abc
  import time
  from typing import Callable, Iterable, Mapping, NamedTuple, Optional, Sized, Union, Tuple
  from absl import logging
  from acme import specs
  from acme import types
  from acme.adders import base
  import dm_env
  import numpy
  import reverb
  import tensorflow
  import tree
label_desc: Use image node_id 2 for calling the ReverbAdder obj's underlying member method code with example usage: obj.__del__() without return types