Use GetTickCount to see how long it takes to execute that procedure to find out if it's even possible to execute the code every 16ms.