SysFn23/ru

From KolibriOS wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Функция 23 - ожидать события с таймаутом


Если очередь сообщений пуста, ждёт появления сообщения в очереди, но не более указанного времени. Затем считывает сообщение из очереди.

Параметры:

  • eax = 23 - номер функции
  • ebx = таймаут (в сотых долях секунды)

Возвращаемое значение:

Замечания:

  • Учитываются только те события, которые входят в маску,
устанавливаемую функцией 40. По умолчанию это события
перерисовки, нажатия на клавиши и на кнопки.
  • Для проверки, есть ли сообщение в очереди, используйте функцию 11.
Чтобы ждать сколь угодно долго, используйте функцию 10.
  • Передача ebx=0 приводит к моментальному возвращению eax=0.
  • При текущей реализации произойдёт немедленный возврат из функции
с eax=0, если сложение ebx с текущим значением счётчика времени
вызовет 32-битное переполнение.

Константы для регистров:

eax - SF_WAIT_EVENT_TIMEOUT (23)