|
꽤 지난 내용이기는 하지만 혹시 다른 분들에게 참고가 돼지 않을까합니다...
우선 해결 방법은 타이머를 쓰는 것이 제일 좋은 방법인데...
왜 이러한 현상이 나타날까요? 그것은 윈도우 자체가 진정한 멀티태스킹이 않입니다.
따라서 Caption에 글자를 찍으라고 메세지를 보내도
보내는 함수에서 for, while, sleep,...등으로 프로세서를 계속 사용하고 프로세서 놓지 않으면
영원히 찍지 못할 수도 있습니다.
그리고 보낸 함수에서 프로세서를 놓아 주었을때 윈도우는 메세지 처리를 할려고 합니다.
그러나 그 메세지가 꽤 지난 것이거나 다른 메세지가 더 우선적일 경우 ...
또는 한번에 무식하게 메세지 처리를 합니다.
결과적으로 최종 값을 캡션에 찍힐 가능성이 크게 됩니다.
...
...
..
그런데 가장 큰 문제점은 어떠한 메세지(예 타이머 메세지) 하나를 사용해서 여러개의 데이터를 여러곳에 작업을 하려
할때(특히 232로 어떠한 명령을 수행하고,... 데이터를 그래프로 출력하고, 저장등을 한다고 할때,...) 그 심각성
극에 달하게 됩니다.
저도 이럴 경우 특별한 답이 없습니다만 ....
참고 하시기를....
|