crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
> Waitable timer
zss
  опции профиля:
сообщение 30.3.2010, 12:51
Сообщение #11


Участник
**

Группа: Участник
Сообщений: 112
Регистрация: 9.6.2009
Пользователь №: 815

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(kwisp @ 30.3.2010, 13:44) *
while(timer.isActive()) -- не дает сработать циклу-обработчику событий, события времени -- обычные события, а ты запуская такой цикл не даешь обрабатывать события из очереди.

странно - я думал, что таймеры это объекты режима ядра и выполняются они не в контексте текущего процесса.

Цитата(kwisp @ 30.3.2010, 13:44) *
QCoreApplication::processEvents эта функция принудительно вызывает обработчик событий на месте своего вызова.


помогло. спасибо. Но думал, что есть что-то схожее с CreateWaitableTimer, который не зависит от цикла обработки событий.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 30.3.2010, 13:03
Сообщение #12


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Цитата(zss @ 30.3.2010, 13:51) *
странно - я думал, что таймеры это объекты режима ядра и выполняются они не в контексте текущего процесса.

Qt же кросплатформенная - видимо с этим связано выполнение в обработчике событий. может таймер и посчитал всё верно, однако возможно он становится неактивным по приходу события окончания отсчёта, а событие не может быть обработано из за while(timer.isActive()) поэтому происходит зацикливание.
по-моему логично.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V  < 1 2
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.4.2024, 8:37