백준 1309번을 풀어보기로 했다.
이번 사이클은 DP인데, DP가 아직 익숙치 않아서 쉬워 보이는 문제부터 풀어보기로 했다.
Layouts > User input 2에서 Create a more polished user experience 공부를 완료했다. 내일은 마지막에 있는 연습하기를 해 봐야겠다.
예전부터 고쳐지지 않던 버그를 오늘 발견해서 고쳤다.
음악 재생 시간이 노래를 여러번 껐다 켜면 점점 갱신되는 단위가 느려지는 버그였다.
당시에는 잘 몰랐는데 코루틴을 조금 공부한 후 여서 그런지 코루틴 자체에는 문제가 없다는 생각이 들었고, 재생시간을 갱신하는 부분을 다시 확인해봤다.
그 부분에서 현재 재생시간을 가져올 때 1초씩 쉬면서(?) 가져오는 방식으로 구현을 했었는데, 그 쉬는 부분에서 CoroutineScope 내부임에도 불구하고 Thread.sleep(1000)
을 사용했던 것을 발견했다... 아마 당시에는 delay
를 몰라서 그랬던 것 같다. Thread.sleep(1000)
을 delay(1000)
으로만 변경하니 문제가 해결 되었다.
오래 고민했던 내용이었는데 이렇게 쉽게 해결되니 조금 허무하기도 했다...
어쨌든 이제 문제없이 작동해서 본격적으로 리팩토링을 해 봐야겠다.