The timer services provided with the Multimedia extensions let applications schedule timed periodic or one-time interrupt events at a higher resolution than is available through the existing Windows timer services. The timer services are loaded when Windows is booted.
Unlike the Windows timer services, the Multimedia timer services are interrupt-based; rather than post WM_TIMER messages to a message queue, they call a callback function at interrupt time. Because the callback code is accessed at interrupt time, it must adhere to strict programming guidelines. Also, high- resolution, periodic interrupt events require significant processor time. This can drastically affect the performance of your application and any other application running at the same time.
The Multimedia timer services are useful for applications that demand high-resolution timing; for example, a MIDI sequencer requires a high-resolution timer because it must maintain the pace of MIDI events within a one-millisecond accuracy rate. For less-demanding synchronization tasks, use the Windows SetTimer function.