2012-04-25 2 views
0

-scrollViewDidScroll과 함께 이상한 경험이 있습니다.Is -scrollViewDidScroll : 백그라운드 스레드에서 호출 되었습니까?

모든 호출에서 NSMutableArray에서 마지막 개체를 얻은 다음 해당 NSMutableArray에 다른 개체를 추가합니다.

하지만 NSMutableArray는 다음 번 호출 전에 시간에 개체를 저장하지 않고 마지막으로 삽입 된 개체를 가져 오려고 할 때 마지막으로 삽입 한 개체가 아닌 것 같습니다. 비동기적인 일이 있습니다.

이 것이 알려진 문제입니까? 주 스레드에서 호출되는지 어떻게 알 수 있습니까?

답변

2

메인 스레드에서 호출되었습니다. Xcode의 중단 점을 -scrollViewDidScroll:에 추가하고 호출 스택을 보면 확인할 수 있습니다.

또는 NSThread에는 + isMainThread 또는 + callStackSymbols와 같은 유용한 메소드가 있습니다.

NSThread Docs

관련 문제