타이머 오차
120
작성한 질문수 13
안녕하십니까? 강사님
강의를 열심히 듣고 있는 중입니다.
363강 Step #29 - Timer를 실습하던중 의문점이 생겨서 문의 드립니다.
30초에 타이머가 일시정지하게끔 하거나 중지시키게 하면 항상 2-3초의 오차가 발생합니다.
이게 소스상의 문제인지 아님 다른 문제인지 알수가 없어서 문의 드립니다.

답변 2
0
기본적으로 asyncAfter에서 약간의 오차(0.1초 이내)가 발생할 가능성이 있습니다.
이것보다 큰 오차가 발생한다면 코드에 문제가 있거나, 맥 자체의 리소스가 부족해서 프리뷰에서 딜레이가 발생할 가능성이 있습니다.
시뮬레이터 또는 실제 디바이스에서 실행해보시고 오차가 0.1초 이내라면 프리뷰의 오차는 무시하셔도 됩니다. 여전히 동일한 수준의 딜레이가 발생한다면 코드를 다시 한 번 점검해 보시기 바랍니다.
0
안녕하세요, 인프런 AI 인턴입니다. smart_ares님.
타이머에서 발생하는 오차는 여러 원인으로 인해 발생할 수 있습니다. 특히 Swift에서 Timer는 UI 업데이트와 같이 이벤트를 관리하는 Run Loop에서 실행되기 때문에, 다른 실행 중인 작업에 의해 지연될 수 있습니다. 일반적으로 iOS 애플리케이션에서는 DispatchSourceTimer를 사용해서 보다 정확한 타이머 구현이 가능합니다.
하지만 기술적인 복잡성을 줄이고 학습 목적으로 Timer를 사용하고 있다면, 몇 가지 사항을 확인해 볼 수 있습니다:
타이머의 정확도:
Timer의tolerance속성을 설정하여 일정한 허용 오차를 설정할 수 있습니다. 이는 타이머의 에너지 효율성을 높여주지만, 절대적인 정확도가 요구된다면 적절한 조정을 해주어야 합니다.
UI 업데이트 주기:
- UI가 주기적으로 업데이트되면서 발생하는 지연을 최소화하기 위해, 타이머가 주요 실행 루프의 디폴트 모드가 아닌 다른 모드에서 실행되고 있는지 확인하십시오.
- UI가 주기적으로 업데이트되면서 발생하는 지연을 최소화하기 위해, 타이머가 주요 실행 루프의 디폴트 모드가 아닌 다른 모드에서 실행되고 있는지 확인하십시오.
백그라운드 작업:
- 타이머가 백그라운드 작업과 경쟁하고 있지는 않은지 확인해 주세요. 타이머가 백그라운드에서 실행되고 있을 경우, 정확도가 떨어질 수 있습니다.
- 타이머가 백그라운드 작업과 경쟁하고 있지는 않은지 확인해 주세요. 타이머가 백그라운드에서 실행되고 있을 경우, 정확도가 떨어질 수 있습니다.
관련한 유사한 문제의 해결책을 찾는 데 도움이 되는 게시물을 소개합니다:
오류를 원인을 알고 싶습니다. - 유사한 코드 구조나 디버깅 절차에 대해 알아보세요.
런타임 오류… 부탁드립니다. - 특정 기능의 오류와 관련된 솔루션을 확인해 보세요.
위의 링크를 참고하시면 문제 해결에 도움을 받을 수 있습니다. 또한, 필요하신 경우 추가적인 로그나 코드를 함께 제공해 주시면 보다 명확한 해결책을 찾는 데 큰 도움이 됩니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
수강 기간 연장 문의
0
22
1
수강연장부탁드려도될까요..
0
37
2
간단한 사이드 프로젝트 작성에도 Max 요금제를 결제하는게 좋을까요?
0
47
2
Combine Playground 에서 실행 시
0
52
2
git 커밋한 내용 궁금합니다.
0
21
1
충돌의 최소화 파트 질문입니당!
0
26
1
70강 - 글로벌 액터로 격리된 Protocol 을 extension 에서 conform 시 타입 본체의 격리 수준 질문
0
40
1
searchable이 화면 하단에 위치해요
0
60
2
430강 modularization
0
79
2
개발버전 release 버전 실습 중 오류-부탁드립니다.
0
105
2
메모의 그룹을 클릭할때마다 항목이 틀리게 나옵니다.
0
93
2
수업 중 궁금한 부분이 있습니다.
0
79
2
Xcode Live Rendering 문의
0
96
2
Xcode에 gpx파일이 인식이 안됩니다.
0
210
2
API 출력 오류.. 도와주세요.
0
160
2
play ground 오류?? 원인을 알고 싶습니다.
0
164
2
런타임 오류... 부탁드립니다.
0
204
2
런타임 오류 - 조언 부탁드립니다.
0
190
2
Playground 실행중 오류
0
239
2
Custom Activity Item 질문
0
105
2
오류를 원인을 알고 싶습니다.
0
142
1
클로저 문법최적화 확인부탁드립니다!
1
112
2
Section21 Nework Part1 / JSON
0
150
2
파라미터와 아규먼트 혼동
0
207
3





