SysFn23/ru: Difference between revisions
Jump to navigation
Jump to search
Punk Joker (talk | contribs) No edit summary |
mNo edit summary |
||
Line 13: | Line 13: | ||
Замечания: | Замечания: | ||
:* Учитываются только те события, которые входят в маску, | :* Учитываются только те события, которые входят в маску, | ||
::устанавливаемую функцией 40. По умолчанию это события | ::устанавливаемую [[SysFn40/ru|функцией 40]]. По умолчанию это события | ||
::перерисовки, нажатия на клавиши и на кнопки. | ::перерисовки, нажатия на клавиши и на кнопки. | ||
:* Для проверки, есть ли сообщение в очереди, используйте функцию 11. | :* Для проверки, есть ли сообщение в очереди, используйте [[SysFn11/ru|функцию 11]]. | ||
::Чтобы ждать сколь угодно долго, используйте функцию 10. | ::Чтобы ждать сколь угодно долго, используйте [[SysFn10/ru|функцию 10]]. | ||
:* Передача ebx=0 приводит к моментальному возвращению eax=0. | :* Передача ebx=0 приводит к моментальному возвращению eax=0. | ||
:* При текущей реализации произойдёт немедленный возврат из функции | :* При текущей реализации произойдёт немедленный возврат из функции | ||
::с eax=0, если сложение ebx с текущим значением счётчика времени | ::с eax=0, если сложение ebx с текущим значением счётчика времени | ||
::вызовет 32-битное переполнение. | ::вызовет 32-битное переполнение. | ||
'''Константы для регистров:''' | |||
::eax - SF_WAIT_EVENT_TIMEOUT (23) | |||
{{System_functions}} | {{System_functions}} | ||
[[Category: SysCalls]] | [[Category: SysCalls]] |
Latest revision as of 18:56, 16 January 2016
Функция 23 - ожидать события с таймаутом
Если очередь сообщений пуста, ждёт появления сообщения в очереди, но не более указанного времени. Затем считывает сообщение из очереди.
Параметры:
- eax = 23 - номер функции
- ebx = таймаут (в сотых долях секунды)
Возвращаемое значение:
- eax = 0 - очередь сообщений пуста
- иначе eax = событие (смотри список событий)
Замечания:
- Учитываются только те события, которые входят в маску,
- устанавливаемую функцией 40. По умолчанию это события
- перерисовки, нажатия на клавиши и на кнопки.
- Для проверки, есть ли сообщение в очереди, используйте функцию 11.
- Чтобы ждать сколь угодно долго, используйте функцию 10.
- Передача ebx=0 приводит к моментальному возвращению eax=0.
- При текущей реализации произойдёт немедленный возврат из функции
- с eax=0, если сложение ebx с текущим значением счётчика времени
- вызовет 32-битное переполнение.
Константы для регистров:
- eax - SF_WAIT_EVENT_TIMEOUT (23)
|