LINUX.ORG.RU

Есть-ли PyGTK idle event ?


0

0

Есть программа на питоне с использованием PyGtk. Она занимается отображением неких данных. Данные эти валятся из COM-порта.

Не хочется городить на тредах (тем более, что программа должна работать и под виндой, а там с ними проблемы есть). Хочется получать некий event от gtk, когда оно не занять отрисовкой чего-нибудь и в его обработчике читать данные.

Вопрос: есть-ли такой эвент и как с ним работать?

★★★★

> Вопрос: есть-ли такой эвент и как с ним работать?

Вроде можно ком-порт открыть как файл в неблокирующем режиме и добавить его в glib event loop.

gaa ★★
()
Ответ на: комментарий от gaa

COM-порт это для простоты. на самом деле может быть и на usb железка.

Нашел вроде.

gobject.idle_add(callback, ...)

alexru ★★★★
() автор топика
Ответ на: комментарий от alexru

> COM-порт это для простоты. на самом деле может быть и на usb железка.

А разве её нельзя читать как файл?

gaa ★★
()
Ответ на: комментарий от alexru

А я как раз idle для вывода в виджеты использую, т.к. это единственная известная мне возможность корректно работать с виджетами из потока под виндовсом. К тому же там мгновенная реакция не особо нужна, а потоки именно для скорейшенго получения данных применяю. Андрей

anonymous
()

В Win32 idle функции не вызываются при работе с менюшками. В плане работы с железякой это может быть критично.

rymis ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.