private static async Task WaitForStateAsync(GrpcChannel channel, ConnectivityState state) { while (true) { var currentState = channel.State; if (currentState == state) { return; } await channel.WaitForStateChangedAsync(currentState); } }