Добрый день! Подскажите пожалуйста как лучше поступить. Имеется SerialPort в

асинхронном режиме в который шлются данные для железки. Вместе с записью в порт запускается таймер, по приёму данных таймер тормозится. Таким образом ловится таймаут около 100 мс. Заметил неприятную штуку, что при изменении размера окна или его перемещении иногда срабатывает таймаут у таймера. Все это выполняется в одном единственном потоке. Чем можно вылечить? Поможет ли вынос последовательного порта и таймера в отдельный поток? Или есть способы в основном всё решить?

5 ответов

10 просмотров

Таймер и так в отдельном потоке. Но работу с портом лучше вынести в отдельный поток.

Ilia-Zhitenev Автор вопроса
Michael Chambers
Таймер и так в отдельном потоке. Но работу с порто...

а в отдельном потоке его использовать через сигнал\слоты или в синхронном режиме? Ни разу не выносил его в отдельный поток, обычно вешал на сигналы свои обработчики

Ilia Zhitenev
а в отдельном потоке его использовать через сигнал...

Через сигнал/слот в отдельный поток и не будет никаких тормозов у ui

а у таймера включен одиночный таймаут? setSingleShot(true)

Похожие вопросы

Обсуждают сегодня

Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Добрый день. Мне посоветовали обратиться к вам в чат за помощью. Ситуация описана на скрине. Как мне сказали, мне на бота навесили флудвейт. Есть ли возможность снять его ра...
OVERLINK
7
Просто по очереди выпиливаешь на ручной маппинг? По методу за раз
Andrii Kurdiumov
7
И? Все равно глазами проверять надо каждое поле
Andrii Kurdiumov
4
Ну есть у нас десяток компаний которым надо. Остальным то зачем?
Andrii Kurdiumov
4
Всем привет! Взялся портировать модули на 18 версию, лезет _logger.log(log_level, 'no translation language detected, skipping translation %s', frame, stack_info=True) А чт...
Max Lit
3
Приветствую. А не подскажете какие ограничения есть на использования api метода setMyName ? Несколько раз сменил имя бота и получил бан на 2 месяца на смену имени.
Slick Slack
8
Доброе утро, а кто то делал Google аналитику через php ? curl_setopt($ch, CURLOPT_NOSIGNAL, true); Это должно быть async без ожидания ответа. Вообще php нормально с таким с...
Max Dubovsky
9
Привет, коллеги! Возникла задача ограничить максимальный размер вложений для определённых расширений, например, чтобы для изображений лимит был 10 МБ, а для видео — 100 МБ. Ог...
Andro
1
Всем привет, добавляю поля в админку через контроллер взависимости от id, поля отображаются, сохраняются в бд, но не редактируются в админке, кто-то сталкивался с таким?
Catherine Poll
4
Карта сайта