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
[7892] Re:Synchronize 이렇게 써도 되나요?
김치열 [barleytea] 1440 읽음    2001-05-31 22:28
Synchronize 함수의 정체부텀 밝히졉

그거 별거 아닙니다. 기타 과정도 있지만.. 하여간에

아무거두 안하구 내부적으로 SendMessage 를

메인 윈도에다 날리는 함수입니다.

그니깐 2차 쓰레드서 1차 쓰레드에 있는 윈도에 메시지를 날릴 경우...

2차 쓰레드는 스레드가 스위칭되서 1차스레드가 메시지를 처리한 담에

메시지 결과값을 리턴할 때까징 대기합니다

그니깐.... SendMessage 마구 날리믄 그만큼 비효율적이겠지만....

CPU 많이 먹는 플그램 아니면 상관 없쩌엽

글고 동기화가 필요없다면 메인쓰레드에다 PostMessage 로 메시지 날리는 것으로도

충분합니다.


초보중 초보^^; 님이 쓰신 글 :
: 제가 시리얼 통신을 이용한 프로그램을 짜서 사용하고 있습니다. 사실 지난 번 질문 했던 사람입니다. ^^;
: 그런데 동시에 표시해야 할 계측값의 종류가 많아서 (ComboBox, MaskEdit등등이 20개가 넘습니다)
: 밑의 코드안에서 처럼 하나의 Thread안에 4개의 Synchronize함수(Display 1,2,3,4)를 쓰고있습니다. 이러면 프로그램이 느려지나요?
: 실행은 잘 되는데 실행을 시키면 updown component가 한 참을 눌러야 반응이 올만큼 너무 느립니다.
:
:
: -----------------------------
: __fastcall TRead::TRead(bool CreateSuspended)
: : TThread(CreateSuspended)
: {
: }
: //--------------------------------------------------------------
:
: void __fastcall TRead::Display1()
: {
: 제가 짠 코드...계측기와 Handshaking하고 값을 읽어오지요..
:
: }
:
: //--------------------------------------------------------------
: void __fastcall TRead::Execute()
: {
: //---- Place thread code here ----
:
: DWORD dwBytesRead;
: FreeOnTerminate = true;
: ......................
: while(1)
:    {앞부분.......................
:
:       Synchronize(Display1);
:       Synchronize(Display2);
:       Synchronize(Display3);
:       Synchronize(Display4);
:
:     뒷부분......................
:    }
:
: }
:
:

+ -

관련 글 리스트
7852 Synchronize 이렇게 써도 되나요? 초보중 초보^^; 1228 2001/05/30
11954     Re:Synchronize 이렇게 써도 되나요? kkadin 1234 2001/10/21
7894     Re:Synchronize 이렇게 써도 되나요? 김치열 1370 2001/06/01
7892     Re:Synchronize 이렇게 써도 되나요? 김치열 1440 2001/05/31
7858     Re:Synchronize 이렇게 써도 되나요? jonglee 1338 2001/05/30
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.