Вызов process_data_events в обработчике в pika - PullRequest
0 голосов
/ 27 января 2019

Поддерживается ли следующий код в pika?Я получаю объект соединения в обработчике, создаю новый канал и выполняю некоторую обработку сообщений, вызывая process_data_events для соединения.Таким образом, вызов process_data_events, который привел к вызову обработчика, не вернулся, когда все это произошло.

def handler(channel, method, props, msg):

    connection = channel.connection
    channel2 = connection.channel()
    channel2.basic_consume(queue2, handler2)
    channel2.basic_publish(exchange, routing_key, message)

    while some_condition:
        connection.process_data_events()

channel.basic_consume(queue1, handler)
channel.start_consuming()

Кажется, это работает, но я хочу убедиться, что нет молчанияпроблемы, вызванные рекурсивным вызовом process_data_events.

...