in alibabacloud_credentials/provider/refreshable.py [0:0]
def _refresh_cache(self):
acquired = self._refresh_lock.acquire(timeout=RefreshCachedSupplier.REFRESH_BLOCKING_MAX_WAIT)
try:
if self._cache_is_stale() or self._should_initiate_cache_prefetch():
try:
self._cached_value = self._handle_fetched_success(self._refresh_callable())
except Exception as ex:
self._cached_value = self._handle_fetched_failure(ex)
finally:
if acquired:
self._refresh_lock.release()