Форум сайта python.su
Стоит задача обмениваться информацией с тремя различными устройствами по последовательному порту (2 по RS485, 1 по RS232).
Работаю с pyserial - всё замечательно, обмен информацией налажен =D
Однако теперь хочу поставить скрипт в работу на постоянной основе. В связи с этим хочу отлавливать события по приходу пакета(или хотя бы байта), дабы уменьшить нагрузку на систему.
Много искал, но решения не нашёл.
Существует ли способ отлавливать приход посылки кроме как в цикле считывать байт или порта и проверять его?
Офлайн
Существует. Но, насколько видел, не без проблем.
В линуксе открытый дескриптор можно напрямую скормить select.select, например - в то время как на винде немного пляшут с бубном.
Пример реализации обоих способов есть в twisted.internet (несколько модулей содержащих serial в имени).
Офлайн