iPhone OS 장치에서 NSTimers를 동시에 실행하는 장치가 너무 많습니까? 나는 한 번에 25 번씩 발사하는 단일 타이머에 의해 호출되는 많은 루틴을 가지고 있으며 일들은 꽤 고르지, 느리고 무겁다. 작업로드를 조금씩 배포하기 위해 NSTimers를 하나 이상 추가하는 방법에 대해 생각하고 있지만 사용하는 것이 얼마나 많은지 걱정됩니다. 이것은 내가 알고있는 각 개별 타이머의 실행 속도에 다소 의존적 일 수 있으므로 초당 20 ~ 30 회 발사 속도를 가정하십시오. 얼마나 많은 NSTimers가 너무 많습니까?얼마나 많은 NSTimers가 너무 많습니까?
답변
내부적으로는 NSTimers
이 모두 단일 하드웨어 타이머에 구현됩니다. 운영 체제는 실행중인 모든 응용 프로그램에 대한 타이머의 중앙 목록을 유지하고 가장 빠른 이벤트에 대한 단일 하드웨어 타이머를 간단히 예약합니다.
타이머를 추가해도 앱 동작이 변경되지 않습니다. 즉, 본질적으로 단일 프로세스 응용 프로그램에 스레드를 추가하는 것과 마찬가지로 런타임 관리를보다 쉽게 만들 수 있으므로 타이머를 추가하면 문제를 분할하는 데 도움이됩니다.
당신이 인용 한 시간을 감안할 때, 나는이 타이머가 게임이나 유사한 것에 대한 프레임 업데이트 동기라고 추측합니다. 나는 사물의 몇 제안 : 별도의 스레드로
분할하여 현재 도면 코드를 그에서 (같은) 타이머 코드를 실행합니다. 이것은 당신에게 더 많은 통제력을 줄 것입니다.
각 1/25 슬롯에 처리량이 얼마나 많은지 확인하십시오. 코드를 최적화하기 만하면 될 수 있습니다.
1 귀하의 경우. 타이머를 추가한다고해서 응용 프로그램이 더 빨리 실행되는 것은 아닙니다.
코드를 효율적으로 만들거나 타이머를 자주 실행하지 않아야합니다.
나는 타이머 오버 헤드에 관해서는 알지 못하지만, 높은 화재 속도로는 상당히 클 수 있습니다. 타이머가 이걸 위해 만들어지지 않았기 때문에, 대안으로 스레드를 제안합니다.
타이머의 수가 문제가 아닌 것처럼 들립니다. NSTimers의 오버 헤드는 "루틴의 무리"에서 수행하는로드와 비교할 때 기본적으로 중요하지 않습니다. 지금은 걱정하지 마세요. 필요한만큼 타이머를 사용하십시오. 그 후 상어/악기를 열어 가장 많은 시간을 보내는 방법을 확인하십시오.
- 1. 얼마나 많은 레이어가 너무 많습니까?
- 2. 얼마나 많은 자바 스크립트가 너무 많습니까?
- 3. 얼마나 많은 SQL 업데이트 기능이 너무 많습니까?
- 4. 얼마나 많은 setIntervals가 우수 사례에서 너무 많습니까?
- 5. cakephp에서 얼마나 많은 HABTM 관계가 너무 많습니까?
- 6. 얼마나 많은 Ruby 스레드가 너무 많습니까?
- 7. 생성자 삽입 : 얼마나 많은 의존성이 너무 많습니까?
- 8. 솔루션에서 얼마나 많은 프로젝트가 너무 많습니까?
- 9. mySQL 인덱스는 너무 많은 행이 너무 많습니까?
- 10. 얼마나 많은 CPU 사용량이 너무 많은가
- 11. 시간이 너무 많습니까?
- 12. 얼마나 많은 키가 memcached에 너무 많이 있습니까?
- 13. iPhone : 메모리 사용량이 너무 많습니까?
- 14. IIS7에 대한로드가 너무 많습니까?
- 15. 자바 - BigDecimals가 너무 많습니까?
- 16. 네비게이션 컨트롤러가 너무 많습니까?
- 17. ASP.NET MVC 프로젝트에서 얼마나 많은 파일이 너무 많이 있습니까?
- 18. 간접 지정 계층이 너무 많습니다. 너무 많습니까?
- 19. 왜 프로그래밍 언어가 너무 많습니까?
- 20. NDK에서 메모리 할당량이 너무 많습니까?
- 21. 내 Android 애플리케이션 메모리가 너무 많습니까?
- 22. 세션 데이터의 양이 너무 많습니까?
- 23. 내 저장소에 논리가 너무 많습니까?
- 24. 레일 -보기에 논리가 너무 많습니까?
- 25. SQL SSIS 얼마나 많은 단계가 너무 많습니다.
- 26. android에 타임 아웃이 너무 많습니까?
- 27. 얼마나 많은 행의 데이터가 너무 많은 데이터 행입니까?
- 28. 많은 도메인 = 메모리 사용량이 많습니까?
- 29. Backbone.js 성능 문제. 뷰가 너무 많습니까?
- 30. 열려있는 파일이 너무 많습니다 : 얼마나 많은 사람들이 무엇인지, 개방, 얼마나 많은 수 나는 자바에서이 예외 얻고있다