This blocks the CPU until all pending rendering associated with the specified framebuffer has completed.
It's very rare that developers should ever need this level of synchronization with the GPU and should never be used unless you clearly understand why you need to explicitly force synchronization.
One example might be for benchmarking purposes to be sure timing measurements reflect the time that the GPU is busy for not just the time it takes to queue rendering commands.
this |
A Framebuffer pointer |