Use an “event” — a synchronization object that allows one thread to notify another that an event has occurred. Events are useful when a thread needs to know when to perform its task. For example, a thread that copies data to a data archive would need to be notified when new data is available. Look for CreateEvent(), SetEvent(), WaitForSingleObject(), etc.