|
맨날 와서 조용히 배우기만 하다가 이렇게 질문 한번 해봅니다. ^^
질문 내용은 사실 초보적인 내용 같은데요
(사실 C빌더는 처음 써봅니다. ^^;;; 물론 프로그래밍 수준도 초보구요 ㅜㅜ;;;)
현재 클라이언트 프로그램을 수정하고 있습니다. 프로그램 동작 내용은 아래와 같은데요
서버로 일정시간(약2분)마다 1.8 킬로바이트 정도의 데이터가 내려옵니다.
데이터는 번호가 정해져 있어서 순서대로 내려옵니다.
그러면 클라이언트는 내려받은 데이터를 순번에 맞게 하나에 파일에 저장하고
그 파일을 근거로 사용자에게 화면을 통해 보여주고 순서대로 시리얼통신으로 연결된
디바이스에 데이터를 하나씩 순서대로 전달해서 작업을 시킵니다.
프로그램은 단일 스레드로 구성되어 타이머 컴포넌트로 각 작업을 조율하고 있는데요
여기서 문제점은 서버로 부터 일정시간 내려오는 데이터가 통신 장애라던지
기타 문제로 일정 시간동안 데이터를 받지 못하게 될 경우가 있습니다.
이때 다시 통신재개가 되어 서버부터 데이터를 받게되면 그 동안 받지 못했던 데이터들이
우르르 내려 오게 되면서 사용자 UI와 작업이 버벅거리게 된다고 할까 거의 멈추어
버린듯이 되어 버립니다.
제 생각에는 서버로부터 데이터를 받고 나서 OK 메세지를 보내는데 이때 이 메세지를
바로 보내지 않고 Sleep 을 주면 어떨까 하는데 (사실 Sleep 을 주면 UI 라던지 다른작업이
원활히 도는지 잘 모르겠습니다. ) C빌더 잘 쓰시는 분에 답변 부탁드립니다.
제가 질문을 잘 이해하게끔 올렸는지 모르겠네요 더 자세한 사항 궁금하시면 더 자세하게
설명 드릴께요 제 생각 같아선 새로 다시 프로그램을 개발했으면 하지만 ^^;;;
워낙 많은 사람들에 손을 거쳐간 소스라 유지 보수의 어려움이 큽니다. ㅜㅜ;;;
|