Добрый день, коллеги.
Имеется такая проблема. Работаю с последовательным портом из Tcl/Tk. Старый способ с постоянным поллингом порта не нравится, осваиваю файлэвенты. Быдлокод Пример работы здесь:
Все нормально работает, но возникают нештатные ситуации. Например, если модем только что включен, на первые несколько команд он отвечает ерундой или не отвечает совсем. Первый вариант обрабатывается, а вот со вторым проблема — ведь в таком случае порт не становится readable. Как мне идеологически правильно разрешить эту ситуацию? На VB под виндами заводили таймер, который включался сразу после подачи команды в порт, и если через определенное время ответа не было — таймер срабатывал, и в нем уже обрабатывалась ошибка. Как сделать аналогично в Tcl/Tk, и стоит ли вообще так делать — я не нашел. Посоветуйте, пожалуйста, как мне правильно поступить.