Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Новый архив 3 (https://www.otvetnemail.ru/novyj-arhiv-3-813/)
-   -   Обработка сообщений главным GUI потоком (https://www.otvetnemail.ru/novyj-arhiv-3-813/obrabotka-soobshenij-glavnym-gui-potokom-262887/)

Guest 28.09.2011 21:56

Обработка сообщений главным GUI потоком
 
Делаю класс на основе Qextserialport c функциональностью асинхронного обмена.Для опроса количества байт в порту использую поток со msleep(1) (пробовал также с таймером), обработку новых данных произвожу при помощи SIGNAL SLOT (пробовал также с QEvent).Класс работает как надо, но если зажать левую клавишу мыши на верхней части окна (типа перемещение) - то SLOT (а так же и event) перестает обрабатываться главной формой а сваливается в очередь обработки сообщений которая не обрабатывается, пока кнопочку не отпустишь, а для приложения работающего с com портом это недопустимо.В принципе можно посадить таймер на главную форму и в нем опрашивать порт - но это не удобно.для SIGNAL SLOT попробовал Directconnection, для QEvent postevent - результата одинаковый, неудовлетворительный, описанный выше.Подскажите пож-ста как бороться с этой проблемой.


Часовой пояс GMT, время: 20:56.


© www.otvetnemail.ru - Форум вопросов и ответов.