C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[69758] Re:Re:Sleep() 반응 속도 문제
송신영 [palindrome] 2404 읽음    2013-07-01 16:46
감사합니다.
저도 여기저기 검색해보니 Builder IDE 실행하면 스위칭 해상도를 강제로 1msec로 맞추는것 같습니다.
그래서 이후로는 잘 동작하는거 같습니다.
Windows이 기본 스위칭 타임이 15msec 정도라고하네요..
그래서 프로그램 생성자에서 timeBeginPeriod(1) 로 설정주니 Builder IDE를 실행했을 때와 동일한 속도로 동작하네요.

참고 : http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_qna&no=62256

님이 쓰신 글 :
: 다른 경우로 동영상 플레이어가 실행되어 있으면 Sleep 속도가 잘 맞는데 부팅해서 그냥 실행하면 시간오차가 크다는 경우는 봤습니다.
: 동영상 플레이어는 KM이나 곰같은 것입니다.
:
: 결론은 이 동영상 플레이어가 실행되면서 mmtimer 의 정밀도를 높여 주기때문이라고 하더군요. 이 동영상 플레이어들이
: 음성과 영상의 싱크를 맞추기 위해 정밀도를 높여 사용한답니다. 
: 해서 프로젝트에 mmsystem을 포함하고 timeBeginPeriod 로 정밀도를 맞춰서 해결했다고 들었습니다
: builder가 이런역활을 해주는 지는 모르겠으나 같은 경우인지 확인해 보심이 ...
:
: 송신영 님이 쓰신 글 :
: : PC 부팅후 Builder (2010) 를 실행하기 개발된 프로그램을 단독으로 실행하면 Thread 에서
: : ::Sleep(1) 을 사용하여 for loop을 1,000회 돌리면 약 15,000 msec 정도(약 15초)가 걸립니다.
: : 그런데 Builder를 실행한 상태이거나 실행했다가 종료만 해줘도
: : 동일한 루틴이 1,000 msec 정도(약 1초)를 약간 넘는 선에서 실행이됩니다.
: : 어찌하여 Builder를 실행하지 않은 경우 Sleep() 동작이 이렇게 느리게 동작되는지 아시는분 계신가요??

+ -

관련 글 리스트
69753 Sleep() 반응 속도 문제 송신영 1966 2013/07/01
69757     Re:Sleep() 반응 속도 문제 2139 2013/07/01
69758         Re:Re:Sleep() 반응 속도 문제 송신영 2404 2013/07/01
69756     Re:Sleep() 반응 속도 문제 aaa 1917 2013/07/01
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.