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
[36638] Re:그냥 참고로...
DoyongID [doyongid] 927 읽음    2004-08-08 16:50
움.. 글쎄요.. 잘은 모르지만, 쓰레드 내에서 타이머는 좀 그럴 것 같은데.. TTimer보다는 GetTickCount()로 시간을 측정해서 처리하는게 좋을 것 같습니다... TTimer는 정확하지가 않더군요..

DWORD __stdcall ThreadProc(LPVOID lpParam)
{
    DWORD Timer1 = GetTickCount();
    DOWRD Timer2 = GetTickCount();

    while(1)
    {
        Sleep(1);

        // 0.1 초마다 한 번씩 처리
        if(GetTickCount() - Timer1 > 100)
        {
            Timer1 = GetTickCount();
            // 이 밑에 처리할 소스 삽입
        }

        // 0.5 초마다 한 번씩 처리
        if(GetTickCount() - Timer2 > 500)
        {
            Timer2 = GetTickCount();
            // 이 밑에 처리할 소스 삽입
        }
    }

    return 0;
}


앙마 님이 쓰신 글 :
: 동적으로 생성된 쓰레드 내부에서 동적 타임머 생성할수 있을까요?  생성은 되는데 동작이 안돼는거 같은데....이상해서 질문합니다..
:
: for (int i =0; i< Count ; i++)
: {
: MIPThread[i]=new TMIPThread(true);
: MIPThread[i]->MSP->HostAddr(Ma[i].addr);
: // 이하 생략..
:
: }            // 이렇게 동적으로 쓰레드 생성을 했구요...
:
: 쓰레드 생성자에..  타임머 동적으로 생성했거덩엽..
: Priority = tpTimeCritical;
: MIP= new MultiIP();
:
: Timer1= new TTimer(NULL);
: Timer2=new TTimer(NULL);
: Timer1->OnTimer=OnTimer1;
: Timer2->OnTimer=OnTimer2;
: Timer1->Interval=100;
: Timer2->Interval=100;
:
:
: 그리고 Excute에서....Timer1,2를 True시켰는데...동작이 안돼는거 같아서염..  쓰레드 내부에서 타임머 사용할 수 없나요??? 타임머 이벤트를 사용하려고 하는데.....

+ -

관련 글 리스트
36627 멀티쓰레드 질문이염.. 앙마 905 2004/08/07
36638     Re:그냥 참고로... DoyongID 927 2004/08/08
36640         Re:Re:그냥 참고로... 앙마 885 2004/08/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.