docs: def fetch(self, key: typing.Union[str, None], default_value=None):
          """
          Retrieves the value of the specified variable from the cache
  
          :param key:
              The name of the variable for which the value should be returned
          :param default_value:
              The value to return if the variable does not exist in the cache
          :return:
              The value of the specified key if it exists in the cache or the
              default_Value if it does not
          """
  
          environ.abort_thread()
  
          if key is None:
              return self._shared_cache_data
  
          return self._shared_cache_data.get(key, default_value)