|
타이머로 시간을 계산하지 말고...
타이머 틱마다 시간을 다시 가져오세요 ...
비교적 정확한 시간이 필요하면 멀티미디어 타이머를 사용하시고 ...
되도록 별도의 Thread로 분리하면 유리하겟죠
타이머 님이 쓰신 글 :
: 와우!! 정리해서 주신 답변 감사합니다~~ ^^
:
: 1. 그렇다면 원하는 시간마다 반복적으로 작업을 해야 할 경우엔 타이머 이외에 다른 방법이 있나요??
:
: 2. 혹은 시간이 지날 수록 오차가 커지게 되는데.. (하는 일이 많아지고, 프로그램 덩치가 커질 수록...)
: 그나마 좁힐 수 있는 방법이 있을까요??
:
: 장성호 님이 쓰신 글 :
: : 타이머는..
: :
: : 1. 타이머는 원래 정확히 딱 떨어지지 않습니다.
: :
: : 2. interval을 1로 한다고 해서 1msec비슷하게 이벤트가 발생하지도 않습니다.
: : 최소 해상도가 20msec 정도 쯤 됩니다.
: :
: : 3. 현재 windows에 수십개이상의 process(exe)가 시간을 쪼개서 같은 cpu를 사용하고 있습니다.
: : os에서 알아서 잘 관리해주지만..
: : 정확히 딱 떨어지려면.. 님의 process혼자만 돌아야 겠죠
: :
: : 4. 현재 님의 어플은 복잡하게 되어있지 않는것 같습니다만..
: : 프로그램이 다른일한다고 바쁜경우에도 timer 이벤트를 제대로 못받습니다.
: :
: : 5. 기타..
: :
: : 즉 여러가지 이유로 1초 딱 떨어지게 하기가 어렵습니다.
: :
: : 결론적으로
: : * timer를 사용할때는 대충 설정한 시간 비슷하게 나온다하고 생각하시고 프로그램해야합니다.
: : * timer의 이벤트를 count해서 시간 계산하는것은
: : 말씀하신대로 한루 이틀 쌓이면 계속 오차가 커집니다.
: :
: :
: : 그럼..
|