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
[50403] Re:[질문]TChart 관련... 도움 부탁드립니다.... ㅜ.ㅜ
장성호 [nasilso] 1916 읽음    2007-08-29 01:40
TChart가 왠만큼 데이타 많이서는 버벅거리지 않는걸로 알고있습니다만.....

[질문]
얼마나 많은 양의 데이타를, 얼마나 자주 가져와서, 얼마나 자주 TChart에 갱신해 주는지요?

질문의 내용만으로는 로직이 어떻게 돌아가는지 잘 이해가 되지않아
이렇게해보세요 라고 구체적으로 얘기하는 힘드네요

그래도 한두가지 제안해보면..

[제안1]
두번째 쓰레드에서 하는 작업을 그냥 메인쓰레드에서 하면 안되나요
그리고 Series->Add()하면서 중간에
Application->ProcessMessage()  해주시면 그런 문제 없어질것 같은데요
메인쓰레드에서 할경우 위와같이 해주면 데이타가 아무리 많아도 문제없죠

[제안2]
그냥 두번째 쓰레드를 2번방법으로 해두고
메인쓰레드와 Syncronize 하시면 될듯도...

방법3은 안되구요  , Sleep한만큼 손해봅니다.

방법1이 통하는 이유는?
두번째 쓰레드가 멈춘후에 메인쓰레드 TChart의 화면갱신이 일어나기땜시....
되는것 같은데.... 권하고 싶은 방법은 아니네요


2번방법으로 하되 TChart에 그리는것을 메인쓰레드에서 하는
제안1을 권합니다.
제생각엔 그 방법이 제어도 편하고 , 속도도 빠를것 같습니다.

그럼....


왕초보빌더 님이 쓰신 글 :
: 프로그램이 시작되면 쓰레드를 두개 만듭니다.
: 첫번째 쓰레드 : 데이터를 읽어오는 쓰레드
: 두번째 쓰레드 : 데이터를 TChart에 그리는 쓰레드
: 많은 양의 데이터를 읽어와서 빠른 속도로 그래프로 출력해야 해서 위 처럼 두개의 쓰레드를 사용했습니다.
: 그리고, 둘 간에 동기화는 하지 않았습니다.
: 데이터를 읽어와서 TChart에 그리는데 까지는 전혀 문제가 없습니다.
:
: 그런데, TChart 가 CPU 를 너무 잡아서 그런지...
: TChart가 메인 폼에 있는데... 메인폼에 있는 버튼들이 잘 동작하지 않습니다.
: 마우스를 스무번 이상 클릭해야 한번 정도 동작하는 것 같습니다.
:
: 해결책이 없을까요?
: 고수님 들의 답변 기대합니다... 도와주십셔... ㅜ.ㅜ
:
: 참... 그리고  TChart 7 Pro 버전에서는 위와 같은 문제가 생기지 않을까요?
: 도저히 방법이 없다면 구입을 해서라도 해결해야 해서리...
:
: 그리고 다음은 제가 시도해본 방법입니다.
: 1. 데이터를 받아오는 쓰레드에서 메시지를 날려서 그래프를 그리는 쓰레드를 resume 과 suspend 를 반복하게
: 해줘봤습니다.
: 효과를 약간 보기는 했지만, delete 쓰레드를 했을때 쓰레드가 죽지 않는 문제가 발생합니다.
:
: 2. 그래프를 그리는 쓰레드 안에서 루프를 돌면서 주기적으로 Application->ProcessMessage() 를 해줘봤습니다.
: 그러나, 별로 효과가 없었습니다.
:
: 3. 그래프를 그리는 쓰레드 내부에서 일정 량을 그린후 Sleep(100)을 줘봤습니다.
: 위의 1번과 비슷한 효과를 얻었습니다.
:
: 제가 시도해본 방법으로 약간의 효과를 얻을 수는 있었지만, 만족할 만한 수준은 아니었습니다.

+ -

관련 글 리스트
50402 [질문]TChart 관련... 도움 부탁드립니다.... ㅜ.ㅜ 왕초보빌더 1886 2007/08/29
50403     Re:[질문]TChart 관련... 도움 부탁드립니다.... ㅜ.ㅜ 장성호 1916 2007/08/29
50404         Re:Re:[재질문]실시간으로 그려야해서... 왕초보빌더 1900 2007/08/29
50406             Re:Re:Re:[재질문]어디에 문제가 있는지는 알았습니다. 그런데... 왕초보빌더 1745 2007/08/29
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.