사람마다 시리얼 통신을 하는 이유는 다를테니 문제 해결 방법도 다를 것이다. 일단 내가 연결하고자 하는 장비는 가끔씩 결과를 수신 받을 수 있다. 그래서 이게 동작을 하는 중인지 문제가 있는 건지 알 수가 없었다.
timeout = 1 옵션을 주니까 몇 분 후에 결과가 나오기 시작했다. 그래서 timeout=0 을 해봤는데, CPU 점유율이 매우 높아지기 시작했다. 이러면 장비가 버티지 못할테니 다시 timeout=1로 바꾸어 보았다. timeout 설정을 검색을 통해서 좀 살펴 보았는데, 와닿지가 않는다. 책을 좀 살펴봐야 하나 싶다.
왠지 모르지만 프로그램 실행 이후 첫 번째 결과가 제대로 읽어지지 않는다. 이것은 해결해야 할 문제이다. 제대로 동작하기 시작하면 끄지 않을 장비이기 때문에 상관은 없을 것이다. 하지만, 이런 문제가 쌓이고 쌓이면 잘못된 결과를 유발할 수도 있을 것 같다.