타이머나 Sleep 쓸 때, 스레드 스위칭 해상도를 조금 높이려면,
timeBeginPeriod 함수를 쓰면 됩니다.
사용 방법은 timeBeginPeriod(1);
파라미터 부분이 원하는 해상도죠. ms 단위입니다.
종료하는 방법은 timeEndPeriod(1); 입니다.
참고: http://msdn.microsoft.com/en-us/library/dd757624(VS.85).aspx
이걸로 시스템 카운터 해상도를 낮추더라도 1ms로 지정한다고 반드시 1ms로
동작한다는 보장은 없습니다.
비선점형 멀티테스킹의 한계입니다.
어플리케이션이 CPU를 요구하는 시점에 커널 관련 처리에 바쁠 경우에는
어플리케이션으로 제어권을 넘겨주지 않습니다.
프로그래머는 그걸 생각해서 프로그래밍을 해야지요.
|