An implementation of the CircuitBreaker pattern. For proper handling of resilience and transient issues please check Polly
var circuitBreaker = new CircuitBreaker();
using (var scope = circuitBreaker.GetScope())
{
service.GetSomeDataFromNetwork();
}