고민해서 예쁘게 잘 짜놨다고 생각했던 코드였는데.. 다 뜯어 고칠 수 밖에 없었네요 ㅎㅎ
제가 개발하고 있는 것 들 중에..
장비상태 관련 데이터가 기록 되있는 파일을 로드해서,
장비상태 이력을 문서로 출력하는 부분이 있습니다
트리구조로..
말단의 장비상태 표시하고, 하위에 결함인 장비가 있으면?
상위에서도 결함으로 표시해야 하는 그런 겁니다
샘플 데이터 찔끔찔끔 만들어서 했을 때는? 10초 내에 끝나던 게?
수백 개 데이터 만들어서 돌려봤더니? 안 끝나더라구요 ㄷㄷㄷ
로그 찍어봤더니..
루프를? 10만 단위로 돌고 있었던 ㄷㄷㄷ (멘붕 ㅠㅠ)
그래서, 원인 발견하고는!
어떻게 수정할지? 하루는 꼬박 생각한 거 같네요 ㅠㅠ
루프 돌리는 건? 가장 바깥쪽으로 빼고..
함수는? index로 결과 만들게 처리하고..
이거.. 수정하면? 디코딩 하는 함수들 다 수정해야 할 텐데 ㅠㅠ
이러면서? 기존에 만들어 놨던 함수들 다 수정했네요 ㅎㅎ
그리고 돌려봤더니? 언제 끝날지 모르던 루프가?
다행히! 2분 정도엔 처리가 되더라구요 ㅠㅠ
(그러면서.. ProgressBar UI도 띄우구요 ㅎㅎ)
그 정도 시간이 걸리는 건? 어쩔 수 없다고 생각하긴 하는데..
10초 간격으로, 1시간 이상 기록된 데이터를 처리하는 거 라서요 ㅠㅠ
제가 짠 코드가? "최적화"는 안 되 있는 코드기도 해서..
더.. 단축 할 수 있는 방법이 분명히 있겠지만! 쉽지는 않을 거 같습니다 ㅠㅠ
