Я делаю POC с rabbitMQ и пишу программу для добавления двух чисел и получения ответа.
Код, который мы написали для извлечения значения из очереди, выполняется бесконечное время (в цикле while), и строка (внутри цикла while) ожидает получения некоторых данных из очереди; пока он не получит что-то из очереди, он не пойдет на следующий цикл цикла while.
Означает, что мы получаем значение внутри бесконечного цикла.
И я хочу использовать это значение для моей следующей обработки.
while (true)
{
QueueingConsumer.Delivery delivery1;
try
{
delivery = consumer.nextDelivery();
//The above line waits until delivery get some value
String result1 = new String(delivery1.getBody());
System.out.println("Result received-"+ result1);
}
catch (InterruptedException ie)
{
continue;
}
} // end while
Проблема в том, что я не могу вернуть значение из цикла while (я хочу запускать его бесконечное время).
Как я могу это сделать, чтобы цикл продолжился, и я получу обработанные данные также вне цикла?