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
[39945] Re:[질문]멀티쓰레드를 생성후 잠시 멈추게 할 경우
황경록 [mpbox] 1187 읽음    2005-04-27 14:06
먼저 데이터를 주고 받는 프로세스를 동기로 할 것인가 비동기로 할 것인가를
생각해야 할 것 같습니다.

쓰레드의 일시정지 및 재시작은 Suspend(), Resume() 함수를 사용하시면 될 것 같고,
근데 Suspend 난 Resume 은 먼저 알고리즘을 설계한 뒤에 그때그때 다르게(;;;)사용하시면 될듯합니다.

프로세스를 쓰레드를 통해 동기적으로 응용하려면

Write CMD

Read DATA

Query with DATA

Write CMD

수순으로 하면 될 것 같고...

메인 쓰레드와 기타 쓰레드와의 데이터 동기화는  TThreadList 를 상속받아
임의의 동기화 작업 클래스를 만드시고
메인 쓰레드에서 타이머를 돌려 동기화 작업 클래스를 읽어
처리해 주시면 됩니다.

말씀해 주신 내용만으로는 정확한 구조를 짜내기가 모호한 부분이 있네요.

즐빌하세요.

하안인 님이 쓰신 글 :
: 작업에 필요한 쓰레드를 20개정도 만든후
:
: 필요할때에 쓰레드가 진행하도록 하려면 어떻게 해야 하나요.
:
: void __fastcall Trans1::Execute()
: {
:   //---- Place thread code here ----
: while(Terminated)
: {
:    ...퀴리 작업....
:
:   Trans1->Suspended = true;   //쓰레드를 멈추게 함...
: }
:
: }
:
: 위와 같이 해서 Suspended를 가지고 조정해야 하나요..
:
: 퀴리를 하려고 할때 백업쓰레드로 그때그때 생성하는 것보다 쓰레드를 만들어 놓고
: 하는것이 좋다고 해서....
:
: 그리고 각 쓰레드에서 퀴리를 하려면 세션을 새로 만들어야만 하는지..
: 동일한 세션을 가지고 여러 쓰레드에서 사용할수 없나요..
: 즉 데이타모듈을 그대로 사용하고 데이타모듈상에 퀴리 컴포넌트만 쓰레드 개수 만큼
: 만들어서 각 쓰레드에서 해당되는 퀴리컴포넌트에 접근해서 사용하면 어떻게 되나요..
:
:
:
: 자문을 구합니다.

+ -

관련 글 리스트
39943 [질문]멀티쓰레드를 생성후 잠시 멈추게 할 경우 하안인 817 2005/04/27
39945     Re:[질문]멀티쓰레드를 생성후 잠시 멈추게 할 경우 황경록 1187 2005/04/27
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.