|
Data송수신 및 저장은 Thread에서 하시구요
Image를 그리는것은 GUI쓰레드(메인Thread)에서 하십시요
Application->ProcessMessages(); 를 이용한다던지..
꼼수로 while문 for문 사이에
Timer이벤트에 들어갈 내용을 넣는것은 바람직 하지 않는것 같습니다.
그럼..
한태희 님이 쓰신 글 :
: 안녕하세요~
:
: 도움을 요청 합니다.
:
: 프로그램을 구동하는데요..
: 통신과 그래프 그리기에서 문제점이 있네요..
:
: 우선 통신은 타이머를 이용해서 수신 요구를 송신하고요..
: 수신된 데이터를 받아 파일로 저장 합니다.
:
: 그리고 파일에서 데이터를 불러와 image를 이용하여 그래프를 그리는 데요..
: 통신 데이터 저장은 1초당 되어야 하는데, 저장된 데이터가 많을 경우 Image에 그래프를 그리는 동안 타이머가 동작 되질 않으므로 통신이 되질 않아 데이터가 저장이 않됩니다.
:
: 쓰레드를 이용하면 image가 없어지고요.. Q&A를 보다 Image같이 화면 Draw를 서브 쓰레드를 사용 하면 문제가 있다고 하네요..
: Application->ProcessMessages(); 이 문은 그래프가 그려지는게 과정이 보이는 관계로 느려지는 경향이 있어 쓰기 어렵습니다.
:
: 그래프를 그리는 동안이던 어떤 일이 있건(While이나 for문) 데이터 저장은 1초마다 되어야 합니다.
: 어떤 방법을 쓰면 좋을 지 알려 주시면 감사해요~~
:
: 예전에 VB로 ActiveEXE를 사용하여 데이터 저장만되는 프로그램을 만들어 메인 프로그램과 연동하여 구동하는 프로그램을 만들었었습니다.
: BCB에선 어떤 방법을 쓰면 좋을지 아시는 분들은 알려 주세요~
:
: 참고로 BCB는 거의 초보 수준입니다.
:
: 제가 글 쓰는 능력이 별로라 이해가 되셨는지 모르겠군요..
: 읽어 주셔 감사 합니다.
|