a1dot0
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Здравствуйте! Подскажите кто-нибудь, как сделать довольно простую вещь в Python, а именно подключение к железке по telnet, передача команд, считывание результата и в зависимости от него ввод новых команд и опять считывание результата (и так много раз). Вот с подключением и вводом команд всё просто, а вот со считываением напряг. Если бы надо было просто подключиться ввести команды, а потом просто посмотреть результат и отключиться, то подходит read_all(). Но вот со считыванием без отключения у меня напряг. Если использовать read_some(), то всё прекрасно считывается, но до тех пор пока в сокете есть данные, если их нет, то происходит блокировка (как, в принципе и написано - "Block if no data is immediately available"), а это фактически зависание скрипта, т.к. никаких данных не поступает, а функция их ждет. Есть еще функция read_eager(), которая не блокируется, но как она работает, я так и не понял  |