glFlush — force execution of GL commands in finite time

C Specification

void glFlush(void); 


Different GL implementations may buffer commands in several different locations, including the GL client, the GL server, and the graphics accelerator. glFlush empties all of these buffers, causing all issued commands to be executed as quickly as they are accepted by the actual rendering engine. Though this execution may not be completed in any particular time period, it does complete in finite time.

Because any GL program might be on an implementation that buffers commands, all programs should call glFlush whenever they count on having all of their previously issued commands completed. For example, call glFlush before waiting for user input that depends on the generated image.


glFlush can return at any time. It does not wait until the execution of all previously issued GL commands is complete.

See Also



Copyright © 2003-2004 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see