Вниз
Скачать: CL | DM;

Обработка сообщений от потока   Найти похожие ветки 

 
Орион ©   (2006-09-29 17:50) [0]

Есть процесс. В нем порядка 10-15 потоков (может быть больше, но не суть важно). При определенном событии поток отправляет через PostMessage сообщение главному окну программы (число прочитанных/переданных байт). Эти события происходят достаточно часто и возникает такая ситуация, что гл. окно попросту не перерисовывается (из-за обилия сообщений в очереди).

Собственно вопрос: как бы решить эту проблему? Т.е. как бы еще организовать передачу инф-ии главному окну?

Возможно завести внутренний буфер (переменную) внутри каждого потока, а потом, например, раз в минуту останавливать все потоки и опрашивать буферы? Но во первых:
- задержки работы потоков
- хотелось бы все же режим "реального времени", а не раз в минуту.


 
Тугодум ©   (2006-09-29 17:53) [1]

Перед отправкой проверять, когда было отправлено прыдудщее сообще6ние. Если совсем недавно, то не посылать.


 
Marser ©   (2006-09-29 17:53) [2]

> Т.е. как бы еще организовать передачу инф-ии главному окну?

Через TCriticalSection, например.
При 15 потоках и высокой частоте обращения использование сообщений, ИМХО, нежелательно.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.039 c
15-1159620235
Сатир
2006-09-30 16:43
2006.10.22
Пересылка сообщения на мобильник посредством Bluetooth


15-1159886848
ferr
2006-10-03 18:47
2006.10.22
Визальный редактор графов.


15-1159342380
Александр Иванов
2006-09-27 11:33
2006.10.22
Прогрнамка для выбора файлов из VSS


2-1160297204
WoW
2006-10-08 12:46
2006.10.22
Нужен толковой пример по работе с интерфейсами...


6-1148991296
Забияка
2006-05-30 16:14
2006.10.22
TIdHTTPServer (Indy 10): ответ порциями без разрыва соединения




   Наверх