'Process the entire queue while taking periodic breaks. This allows
the game loop to run smoothly. The queue contains calls to
_show_block() and _hide_block() so this method should be called if
add_block() or remove_block() was called with immediate=False'

def process_queue(self):

    start = time.clock()
    while (self.queue and ((time.clock() - start) < (1.0 / TICKS_PER_SEC))):
        self._dequeue()
