py-amqp / flopsy: ожидание одного сообщения AMQP в Python - PullRequest
0 голосов
/ 28 июня 2010

У меня есть вопрос, похожий на этот : в py-amqp / flopsy очень легко сказать: «Я буду ждать вечно, и я хочу, чтобы этот обратный вызов вызывался всякий раз, когда приходит сообщениев ", но я не могу найти никакого способа сказать" ОК, я получил сообщение, которое я хочу, теперь перестань ждать ".(Может быть, GOTO? Просто шучу ...) Есть ли элегантный способ сделать это?

1 Ответ

1 голос
/ 29 июня 2010

ОК, может быть, это должно было быть для меня очевидно: если вы регистрируете обратный вызов в flopsy (который является тонкой оболочкой вокруг amqplib) с помощью

consumer.register('kind', callback_func)
consumer.wait()
# more code goes here...

, тогда вы можете raise исключение в callback_func, чтобы добраться до остальной части кода.

Бонусный вопрос : Как установить максимальное время ожидания для wait() в случае, если ответ не получен?Допустим, это в контексте unittest теста.

...