The command
indicates that all commands that have previously been sent to the GL must complete in finite time.
The command
forces all previous GL commands to complete. Finish does not return until all effects from previously issued commands on GL client and server state and the framebuffer are fully realized.