private async Task FireNuGetCacheUpdatedEventAsync(NuGetEventArgs <string> e) { try { // Await a delay of 100 mSec to batch multiple cache updated events. // This ensures the minimum duration between 2 consecutive UI refresh, caused by cache update, to be 100 mSec. await Task.Delay(100); // Check if the cache is still dirty if (_projectSystemCache.TestResetDirtyFlag()) { // Fire the event only if the cache is dirty AfterNuGetCacheUpdated?.Invoke(this, e); } } catch (Exception ex) { _logger.LogError(ex.ToString()); } }