public async Task <bool> Return(ConsulClient consulClient) { if (consulClient == null) { return(await Task.FromResult(false)); } if (Interlocked.Increment(ref _proceduerCount) < MaxQueueSize) { try { consulClient.CheckDisposed(); _consuleQueue.Enqueue(consulClient); return(await Task.FromResult(true)); } catch (Exception e) { throw e; return(await Task.FromResult(false)); } } return(await Task.FromResult(false)); }