• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 249
  • Last Modified:

Weird millisecond offset

SetTimer(2, 600000, NULL);

should set a timer to go off in 10 minutes.

I get a very strange millisecond offset - the timer activates about 30 seconds early.

What is wrong?
1 Solution
SetTimer isn't perfect.  It is event driven and ends up getting fired when the system can post a message for it (its usually close to the time delay you specify, but not exactly).  You might try using a "Waitable Timer Object" using CreateWaitableTimer (requires a thread) or you could try creating a thread and using WaitForSingleLock to sit on an event until the time period has expired.  These options are usually more accurate than the SetTimer approach.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now