I'm using mmTimer on Win95 in one of my programs to create more precise Sleep function. I'm using one shot timers for this. So having an extra overhead will heart the performance. I'm already have interthread suspending/resuming with thread handle duplication.
As I recall all my systems I was using at a time had a default resolution of 10ms.
MSDN says that each timeBeginPeriod should be matched with timeEndPeriod. When I stopped the program in the middle of debugging it, I had a resolution of 1ms thereafter. It seems that native using the same resolution for the whole system.
Vitaliy Margolen