parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

virusav 26.11 10:57 / 26.11 11:29

Т.к. задачи можно получить только через consume, то можно доклеивать в хеш параметров callback еще один параметр:
h->put("is_last", ... bool ...);
Если, конечно, это возможно.)

В теории можно завести счетчик, получать до начала прослушки количество сообщений в очереди, а потом в callback накручивать этот счетчик и самостоятельно определять is_last.

Если есть возможность получать is_last в параметрах callback, то это было бы удобнее.

UPD: описанное выше относится к случаю, когда мы не используем ack, а просто перебираем один раз все задачи.

Возможно, универсальнее будет возвращать количество задач в очереди, включая текущую, чтобы пользователь сам мог рассчитать is_last.

Если использовать ack, то is_last=TRUE, когда сообщение - единственное в очереди.