NSTimer를 실행할 수있는 가장 빠른 방법은 무엇입니까? 나는 그것이 30ms에 접근하는 것은 쓸모 없게되는 것을 읽었다. 그래서 어디에서 "쓸모 없게되기 시작한다"... 40ms? 50ms?NSTimer를 실행해야하는 가장 빠른 방법은 무엇입니까?
답변
말 the docs :
타이머의 시간 간격의 유효 해상도가 에 제한됩니다50 ~ 100 밀리 초
의 순서에 당신이 원하는 경우처럼 소리 안전하다면 타이머를 0.1 초 미만으로 사용해서는 안됩니다. 하지만 자신의 앱에서이 앱을 사용해 보면서 왜 저조한 모습을 보지 않으시겠습니까?
귀하는 이에 대해 보증을하지 않습니다. NSTimers는 이벤트 루프로 실행되기 때문에 기회가 많습니다. 효과적인 최상의 세분성은 Cocoa 타이머 디스패치 메커니즘의 한계에 추가하여 앱에서 진행되는 모든 작업에 따라 달라집니다.
감사합니다. GCD를 사용하여 직접 작성하는 것 외에도 이보다 더 빠를 수있는 권장 방법이 있습니까? –
@DanRosenstark (6 년 후 ...) 당신이 필요로하는 것에 달렸습니다. 'CADisplayLink'는 60 분의 1 초에 당신을 데려다 줄 것 같아요. 디스플레이 타이밍 주위에 약간의 경고가 있습니다. 실시간 또는 초 정밀도를 보장해야하는 것이 필요한 경우 최선의 접근 방법에 대해 새로운 질문을해야합니다. 행운을 빕니다! –
수행하려는 결과에 따라 다릅니다. NSTimer Class
0.5 - 1.0
은 신뢰할 수있는 결과를 얻기에 좋은 장소입니다.
신뢰할만한 정의는 무엇입니까? 1 초 타이머에서 16mS 오류는 2 % 오류 미만이지만 30mS 타이머에서는 50 % 오류 이상입니다.
NSTimers는 현재 실행 루프에서 발생하는 모든 작업이 완료 될 때까지 기다리고 시간에 따른 오류가 누적 될 수 있습니다. 예 : 디스플레이를 N 번 터치하면 모든 후속 NSTimer 반복 실행이 누적 시간 0부터 N까지 처리기 ("잘못된"시간에 실행중인 다른 모든 항목)에 의해 늦어 질 수 있습니다.
CADisplayLink 타이머는 전경 작업의 집합이 프레임 시간만큼 오래 걸리지 않는다고 가정하고 프레임 속도에 대한 시간을 양자화하려고 시도합니다.
- 1. 다른 NSTimer를 중첩하는 방법은 무엇입니까?
- 2. 가장 빠른 저장 방법은 무엇입니까?
- 3. NSTimer를 사용하여 백그라운드에서 XML을 구문 분석하는 가장 좋은 방법은 무엇입니까
- 4. 가장 빠른 방법은 파이썬
- 5. float로 변환하는 가장 빠른 방법은
- 6. dom 요소를 얻는 가장 빠른 방법은 무엇입니까?
- 7. PHP 템플릿을로드/포함하는 가장 빠른 방법은 무엇입니까?
- 8. Windows.Forms에서 이미지를 페인트하는 가장 빠른 방법은 무엇입니까?
- 9. SQLite에서 테이블을 채우는 가장 빠른 방법은 무엇입니까?
- 10. Akamai에 파일을 업로드하는 가장 빠른 방법은 무엇입니까?
- 11. XML을 구문 분석하는 가장 빠른 방법은 무엇입니까?
- 12. CSS 속성을 설정하는 가장 빠른 방법은 무엇입니까?
- 13. .NET에서 가장 빠른 serialization 방법은 무엇입니까?
- 14. 컬렉션에서 요소에 액세스하는 가장 빠른 방법은 무엇입니까?
- 15. 개체에 속성을 설정하는 가장 빠른 방법은 무엇입니까?
- 16. ReadProcessMemory를 만드는 가장 빠른 방법은 무엇입니까?
- 17. 파이썬에서 프로세스를 호출하는 가장 빠른 방법은 무엇입니까?
- 18. 전쟁의 안개를 계산하는 가장 빠른 방법은 무엇입니까?
- 19. 선 배열을 그리는 가장 빠른 방법은 무엇입니까?
- 20. PHP로 프로젝트를 개발하는 가장 빠른 방법은 무엇입니까?
- 21. PHP와 MySQL을 처리하는 가장 빠른 방법은 무엇입니까?
- 22. 비트 맵을 그리는 가장 빠른 방법은 무엇입니까?
- 23. 솔루션 구축시 가장 빠른 방법은 무엇입니까?
- 24. 목록에서 항목을 찾는 가장 빠른 방법은 무엇입니까?
- 25. html 테이블을 렌더링하는 가장 빠른 방법은 무엇입니까?
- 26. XML을 작성하는 가장 빠른 방법은 무엇입니까
- 27. iPhone에서 큰 이미지를로드하는 가장 빠른 방법은 무엇입니까?
- 28. HTML5로 그릴 수있는 가장 빠른 방법은 무엇입니까
- 29. SD 카드에서보기로 이미지를로드하는 가장 빠른 방법은 무엇입니까
- 30. GregorianCalendar를 복제하는 가장 빠른 방법은 무엇입니까?
빠른 실행, 반복, 타이머는 피해야합니다. 그들은 배터를 소비하고 응용 프로그램을 응답하지 않는 경향이 있습니다. – bbum
[빈도가 높은 NSTimer 사용?] (http://stackoverflow.com/questions/4289588/using-an-nstimer-at-high-frequencys) –
@bbum "빠른 실행, 반복 타이머는 피해야합니다 "... NSTimer 인스턴스 또는 디자인 문제를 언급하고 있습니까? 또한, NSTimer보다 빠른 대안이 있습니까? MIDI를 푸시하기 위해 CADisplayLink 60fps보다 빠릅니다. –