private void StopListenQueue(ref string consumerTag, ref IModel channel) { if (!string.IsNullOrEmpty(consumerTag)) { channel.BasicCancel(consumerTag); consumerTag = null; } if (!_handleMessageEvent.IsSet) { TimeSpan waitTimeOut = new TimeSpan(0, 1, 30); Console.WriteLine( $"В текущий момент времени идет обработка сообщения. Ожидание окончания обработки сообщения в течении {waitTimeOut.TotalSeconds} секунд"); if (_handleMessageEvent.Wait(waitTimeOut) == true) { Console.WriteLine("Ожидание обработки сообщения завершилось успешно!"); } else { Console.WriteLine( "Не удалось дождаться обработки сообщения. Закрываем соединение с RabbitMQ сервером"); } } _rabbitMqConnection.CloseChannel(channel); channel = null; }