2009-09-04 2 views
4

내 앱의 성능이 좋지 않으며 코드의 어떤 부분이 악의적인지 파악하고 싶습니다. 거기에 좋은 입문서 어딘가에 어떻게 찾을 수 있습니까?iPhone 앱에서 성능 병목 현상을 찾는 방법은 무엇입니까?

+0

"iPhone 앱 성능 병목 현상 찾기?"에 관한 질문은 더 좋은 제목 일 수 있습니다. 질문과 제목에서 어떤 기술에 관심이 있는지는 분명하지 않습니다. – lillq

답변

9

인스트루먼트는 이와 관련하여 친구이며, 메모리 누수를 발견하기위한 많은 우수한 프로파일 링 도구, 사용중인 메모리 용량, 실행중인 코드의 자세한 추적 등을 제공합니다. 계측기 사용 설명서 here을 찾을 수 있습니다.

그러나 개발자 도구와 함께 설치되는 Shark라는 작은 도구를 살펴 봐야합니다. 개인적으로 필자는 Shark가 내 코드를 프로파일 링하고 중요 할 때 무엇이 ​​시간을 들이고 있는지 파악하기 위해 Instruments보다 유용하다고 생각한다. 상어 사용에 관한 많은 정보를 알고 싶으시면 Optimizing your Application with Shark 4을 읽어보십시오.

방금 ​​iPhone 앱을 최적화하는 데 몇 일을 보냈습니다. Shark는 멋진 도구입니다. 일단 당신이 느린 곳을 알게되면, 빠르게 만들기가 어려울 수 있습니다. 특히 UIImages를 그리는 경우 - 이미지를 정적 변수로 많이 캐싱해야합니다!

최적화는 코드의 가독성을 크게 떨어 뜨릴 수 있으므로 코드 작성 위치를 신중히하고 절대적으로 필요한 부분인지 확인하십시오.

+0

상어와 함께 좋은 힌트지만, 아이폰 애플 리케이션에 그것을 제약하는 방법? 내가 얻는 것은 공정한 허튼 소리 목록 일 뿐이다. –

+0

시뮬레이터에서 앱을 시작한 다음 "모든 것"을 "프로세스"로 변경 한 다음 프로세스 목록에서 프로세스를 선택하십시오.이 프로세스는 앱과 동일한 이름을 갖습니다. 장치에서 상어를보고 싶다면 샘플링 -> 네트워크/iPhone 프로파일 링 ...을 선택하고 장치에 연결 한 다음 목록에서 프로세스를 선택하십시오. – iKenndac

+0

네트워킹 할 때 선택할 프로세스가 없습니다. 내가 본 모든 장치가 활성화되었습니다. 프로세스가 회색으로 표시됩니다. –

1

XCode와 동일한 디렉토리에있는 "Instruments"응용 프로그램을 사용하여 일부 프로파일 링을 수행합니까?

XCodes의 "Run"메뉴에서 "Start with Perfomance Tool"을 사용하여 Instruments로 프로그램을 실행할 수 있습니다.

관련 문제