inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Lớp học nâng cao về Swift & iOS từ kiến ​​thức cơ bản về phát triển ứng dụng đến thực hành thực tế chỉ trong một

타이머 오차

161

smartares8769

13 câu hỏi đã được viết

0

안녕하십니까? 강사님

강의를 열심히 듣고 있는 중입니다.

363강 Step #29 - Timer를 실습하던중 의문점이 생겨서 문의 드립니다.

30초에 타이머가 일시정지하게끔 하거나 중지시키게 하면 항상 2-3초의 오차가 발생합니다.

이게 소스상의 문제인지 아님 다른 문제인지 알수가 없어서 문의 드립니다.

스크린샷 2025-07-06 오전 8.12.34.png.webp

 

ios swift git

Câu trả lời 2

0

KxCoding

기본적으로 asyncAfter에서 약간의 오차(0.1초 이내)가 발생할 가능성이 있습니다.

이것보다 큰 오차가 발생한다면 코드에 문제가 있거나, 맥 자체의 리소스가 부족해서 프리뷰에서 딜레이가 발생할 가능성이 있습니다.

시뮬레이터 또는 실제 디바이스에서 실행해보시고 오차가 0.1초 이내라면 프리뷰의 오차는 무시하셔도 됩니다. 여전히 동일한 수준의 딜레이가 발생한다면 코드를 다시 한 번 점검해 보시기 바랍니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. smart_ares님.

타이머에서 발생하는 오차는 여러 원인으로 인해 발생할 수 있습니다. 특히 Swift에서 Timer는 UI 업데이트와 같이 이벤트를 관리하는 Run Loop에서 실행되기 때문에, 다른 실행 중인 작업에 의해 지연될 수 있습니다. 일반적으로 iOS 애플리케이션에서는 DispatchSourceTimer를 사용해서 보다 정확한 타이머 구현이 가능합니다.

하지만 기술적인 복잡성을 줄이고 학습 목적으로 Timer를 사용하고 있다면, 몇 가지 사항을 확인해 볼 수 있습니다:

  1. 타이머의 정확도:

    • Timertolerance 속성을 설정하여 일정한 허용 오차를 설정할 수 있습니다. 이는 타이머의 에너지 효율성을 높여주지만, 절대적인 정확도가 요구된다면 적절한 조정을 해주어야 합니다.
  2. UI 업데이트 주기:

    • UI가 주기적으로 업데이트되면서 발생하는 지연을 최소화하기 위해, 타이머가 주요 실행 루프의 디폴트 모드가 아닌 다른 모드에서 실행되고 있는지 확인하십시오.
  3. 백그라운드 작업:

    • 타이머가 백그라운드 작업과 경쟁하고 있지는 않은지 확인해 주세요. 타이머가 백그라운드에서 실행되고 있을 경우, 정확도가 떨어질 수 있습니다.

관련한 유사한 문제의 해결책을 찾는 데 도움이 되는 게시물을 소개합니다:

위의 링크를 참고하시면 문제 해결에 도움을 받을 수 있습니다. 또한, 필요하신 경우 추가적인 로그나 코드를 함께 제공해 주시면 보다 명확한 해결책을 찾는 데 큰 도움이 됩니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

강의 자료 접근 불가

1

20

1

layout group의 종류 3가지 실무 적합활용이 궁금합니다.

0

20

1

결제기능까지 알려주실수있나요?

1

28

2

보안 점검

1

31

2

강의영상 버퍼링

1

42

4

git status 에서 폴더에 파일을 생성하면 해당 파일이 수정으로 뜨는데 기존 파일 수정시에는 수정내역으로 안뜨네요 왜 그런걸까요?

0

14

1

DESIGN.md 파일이 잘못되었어요

1

46

1

mcp 연결안됌

1

62

2

430강 modularization

0

111

2

개발버전 release 버전 실습 중 오류-부탁드립니다.

0

137

2

메모의 그룹을 클릭할때마다 항목이 틀리게 나옵니다.

0

129

2

수업 중 궁금한 부분이 있습니다.

0

107

2

Xcode Live Rendering 문의

0

129

2

Xcode에 gpx파일이 인식이 안됩니다.

0

253

2

API 출력 오류.. 도와주세요.

0

188

2

play ground 오류?? 원인을 알고 싶습니다.

0

214

2

런타임 오류... 부탁드립니다.

0

268

2

런타임 오류 - 조언 부탁드립니다.

0

217

2

Playground 실행중 오류

0

299

2

Custom Activity Item 질문

0

128

2

오류를 원인을 알고 싶습니다.

0

167

1

클로저 문법최적화 확인부탁드립니다!

1

144

2

Section21 Nework Part1 / JSON

0

167

2

파라미터와 아규먼트 혼동

0

251

3