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)
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