Функция GdiFlush (wingdi.h)

Функция GdiFlush очищает текущий пакет вызывающего потока.

Синтаксис

BOOL GdiFlush();

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

Если все функции в текущем пакете выполняются успешно, возвращаемое значение будет ненулевым.

Если не все функции в текущем пакете успешно выполняются, возвращаемое значение равно нулю, что означает, что по крайней мере одна функция вернула ошибку.

Комментарии

Пакетная обработка повышает производительность рисования за счет минимизации времени, необходимого для вызова функций рисования GDI, возвращающих логические значения. Система накапливает параметры для вызовов этих функций в текущем пакете, а затем вызывает функции при очистке пакета с помощью любого из следующих средств:

  • Вызов функции GdiFlush .
  • Достижение или превышение предела пакета, установленного функцией GdiSetBatchLimit .
  • Заполнение буферов пакетной обработки.
  • Вызов любой функции GDI, которая не возвращает логическое значение.
Возвращаемое значение для GdiFlush применяется только к функциям в пакете на момент вызова GdiFlush . Ошибки, возникающие при очистке пакета другими способами, никогда не сообщаются.

Функция GdiGetBatchLimit возвращает ограничение пакета.

Примечание Ограничение пакета сохраняется для каждого потока отдельно. Чтобы полностью отключить пакетную обработку, вызовите GdiSetBatchLimit (1) во время инициализации каждого потока.
 
Приложение должно вызывать GdiFlush до того, как поток исчезнет, если есть вероятность наличия ожидающих вызовов функций в очереди пакетов графики. Система не выполняет такие пакетные функции, когда поток исчезает.

Многопоточное приложение, которое сериализует доступ к объектам GDI с помощью мьютекса, должно обеспечить очистку очереди пакетной обработки GDI путем вызова GdiFlush , так как каждый поток освобождает владение объектом GDI. Это предотвращает конфликты объектов GDI (контексты устройств, метафайлы и т. д.).

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header wingdi.h (включая Windows.h)
Библиотека Gdi32.lib
DLL Gdi32.dll

См. также раздел

GdiGetBatchLimit

GdiSetBatchLimit

Функции рисования и рисования

Общие сведения о рисовании и рисовании