To make most of your microprocessor a form of multitasking is required. Most people new to Arduino and C++ use the function delay() to stop execution for a certain period of time. Unfortunately this prevents the microprocessor from doing anything useful in the meantime.
The following video is a demonstration of multitasking on the arduino using timers and state machines. By exchanging delay() for timed events the example in the video updates the display while gathering new sensor data and populating the array that holds the last 60 readings. Even though the GUI might show a different interface at a time the other tasks are executed in the background.