Pika + RabbitMQ + Tornado. Метод basic_publish асинхронный или нет?
Здравствуйте. Может немного витиевато опишу вопрос и может не совсем корректно, но надеюсь знающим он будет понятен.
Учусь писать асинхронный код. В pika есть адаптер TornadoConnection, через него создаю асинхронный channel, создаю очередь, application tornado создан и запущен. Хочу теперь добавить в очередь сообщение используя метод basic_publish. в свою очередь channel.basic_publish(...) я вызываю внутри отдельно созданной карутины (функция с декоратором @gen.coroutine). Вопрос такой, basic_publish работает асинхронно или нет внутри карутины? или нужно писать вызов этой функции с yield: yield channel.basic_publish(...) что бы она работала асинхронно? Спасибо.
Pavel Denisov, вот именно что выглядит как обычная функция, однако в этом примере pika.readthedocs.io/en/0.10.0/examples/asynchronou... пишут что код асинхронный. я предположил что если создается асинхронный канал, то Pika как то определяет это и возможно как то декорирует ее.