PinkRabbitMQ
PinkRabbitMQ copied to clipboard
Не вызывать исключения внутри цикла чтения сообщений.
Если делать так
Клиент = Новый("AddIn.BITERP.PinkRabbitMQ"); ВыходнойПараметр = "";
Попытка Пока Клиент.BasicConsumeMessage(Потребитель, ВыходнойПараметр, Таймаут) Цикл // Работа с компонентой Если Клиент.CorrelationId <> "МОЙ_ИД" Тогда ВызватьИсключение "Ошибка чтения свойств!"; // ТАК ДЕЛАТЬ СТРОГО НЕ РЕКОМЕНДУЕТСЯ!!! КонецЕсли; ВыходнойПараметр = ""; КонецЦикла;
Исключение Клиент = неопределено; КонецПопытки
Это будет корректно? Вызывать исключение в попытке?
Нет, будем потеряна память из-за того, что переменная ВыходнойПараметр не очищается. Кроме того возможно будет потеряна память на кеше считанных соообщений, которые хранятся внутри компоненты. Размер кеша считанных сообщений зависит от параметра selectSize метода BasicConsume