Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
[Perl] Чтение из девайса. 11.07.05 14:27 Число просмотров: 1500
Автор: J'JF <Dmytro Volhushyn> Статус: Elderman Отредактировано 11.07.05 14:28 Количество правок: 1
|
Имеем весьма распространенную ситуацию - нужно послать на com-порт команду и получить ответ. В том случае, если ответ не пришел за определенный промежуток времени - повторить цикл. Вопрос в том, как это реализовать?
Сейчас я пользуюсь примерно следующей схемой:
open (COM, '+</dev/cuaa0');
system ("stty -f /dev/cuaa0 2400");
print COM $command;
read COM, $answer, $an_length;
close COM;
так вот, бывает так, что девайс от порта отключили или же сам девайс "ушел в себя" и не отвечает. В этом случае скрипт затыкается на
read COM, $answer, $an_length;
и никаких признаков жизни не подает - приходится его передергивать. Вопрос автоматизации процесса передергивания в принципе не сложен и решен, однако хотелось бы поступить красивее и реализовать защиту от вышеописанной ситуации прямо в скрипте. Однако, как подойти к решению этой проблемы - не знаю.
|
- [Perl] Чтение из девайса. - J'JF 11.07.05 14:27 [1500]
|
|
|