Я читаю данные с нескольких последовательных портов. В настоящее время я использую собственный обработчик сигналов (устанавливая sa_handler) для сравнения и пробуждения потоков на основе информации дескриптора файла. Я искал выход, чтобы иметь отдельные потоки с уникальными обработчиками сигналов, в связи с этим я обнаружил, что следует использовать системный вызов select.
Теперь у меня следующие вопросы:
- Если я использую поток (Qt), то куда мне поместить системный вызов select для мониторинга последовательного порта?
- Безопасен ли поток системного вызова select?
- Является ли это интенсивным процессором, потому что в моем приложении происходит много вещей, включая обновление графического интерфейса?
Пожалуйста, не возражайте, если эти вопросы кажутся вам смешными. Я никогда не использовал такой механизм для последовательной связи.