This command is used to bring the application “up to date” by entering the event loop repeatedly until
all pending events (including idle callbacks) have been processed.
If the idletasks keyword is specified as an argument to the command, then no new events or errors are
processed; only idle callbacks are invoked. This causes operations that are normally deferred, such as
display updates and window layout calculations, to be performed immediately.
The updateidletasks command is useful in scripts where changes have been made to the application's state
and you want those changes to appear on the display immediately, rather than waiting for the script to
complete. Most display updates are performed as idle callbacks, so updateidletasks will cause them to
run. However, there are some kinds of updates that only happen in response to events, such as those
triggered by window size changes; these updates will not occur in updateidletasks.
The update command with no options is useful in scripts where you are performing a long-running
computation but you still want the application to respond to events such as user interactions; if you
occasionally call update then user input will be processed during the next call to update.