Как PySNMP AsyncioDispatcher вписывается в более широкий контекст asyncio?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как PySNMP AsyncioDispatcher вписывается в более широкий контекст asyncio?

Сообщение Anonymous »

Я пытаюсь реализовать довольно простое асинхронное приложение, используя pysnmp-lextudio. В идеале я хотел бы предложить командную строку, которая позволяла бы мне отправлять команды (получить/установить), а также получать уведомления о входящих ловушках/информациях.
Я думаю Я реализовал аспект командной строки, используя код, похожий на:

Код: Выделить всё

async def interactive_prompt():
"""Provide a continuous prompt for user input."""
print("Enter 'help' for a list of commands.")
while True:
user_input = input("> ").strip()
await process_command(user_input)

async def main():
await asyncio.gather(
# receive_notifications(),
interactive_prompt()
)

if __name__ == "__main__":
asyncio.run(main())

Однако мне трудно понять, как различные примеры обработки уведомлений вписываются в эту настройку (если вообще вписываются). Пример, представленный здесь: https://docs.lextudio.com/pysnmp/exampl ... ort-tweaks, кажется, блокируется в следующих местах:

Код: Выделить всё

...
try:
# Dispatcher will never finish as job#1 never reaches zero
transportDispatcher.runDispatcher()
finally:
transportDispatcher.closeDispatcher()
Предполагая, что это действительно блокируется, мое первое предположение (исходящее из мира C++) заключается в том, что это должно существовать в отдельном потоке, поскольку оно никогда не позволит запускать другие задачи. Я, очевидно, новичок в мире асинхронного Python, так что, возможно, я упускаю здесь что-то очевидное. Мои попытки покопаться в коде ни к чему не привели. Я был бы очень признателен за некоторые разъяснения по этому поводу. Ошибся ли я, принимая asyncio? Должен ли я следовать своему инстинкту и вернуться к использованию подпроцесса?

Подробнее здесь: https://stackoverflow.com/questions/788 ... io-context
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Pysnmp.smi.error.SmiError: модуль X-MIB не загружен в <экземпляр pysnmp.smi.builder.MibBuilder в Y>
    Anonymous » » в форуме Python
    0 Ответы
    29 Просмотры
    Последнее сообщение Anonymous
  • Asyncio: передайте контекст или контекст, чтобы add_done_callback
    Anonymous » » в форуме Python
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Asyncio Async Funcitons вешает с Asyncio.gather. (Код работает без Asyncio.gather)
    Anonymous » » в форуме Python
    0 Ответы
    27 Просмотры
    Последнее сообщение Anonymous
  • Степенной закон вписывается в Python
    Гость » » в форуме Python
    0 Ответы
    27 Просмотры
    Последнее сообщение Гость
  • Как я могу гарантировать, что мой CSS-контент идеально вписывается в окно веб-браузера?
    Anonymous » » в форуме CSS
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»