2011-03-18 4 views
1

ios에서 파일 및/또는 문자열 데이터를 캐시하는 올바른 방법은 무엇입니까? CoreData가 유용할까요? 아니면 더 나은 일입니까?iPhone/iPad에서 캐싱 데이터를 올바르게 수정하십시오.

성능을 위해 캐시하는 가장 좋은 방법은 무엇이며 어떤 양의 데이터에 대해서도 지속성을 유지하려면 무엇을 사용해야합니까?

나는이 주제에 대해 멋진 Apple 문서를 찾지 못하는 것 같습니다.

+0

어떤 종류의 캐싱을 원하십니까? 메모리 또는 디스크 캐싱에 있습니까? 그리고 배포 목표는 무엇입니까? – JustSid

+0

그리고 어떤 종류의 데이터를 캐싱하고 있습니까? 이미지? 앱 상태? 본문? – kubi

+0

@kubi 이미지를 명시 적으로 캐시 할 필요는 없으며 그 밖의 모든 기능은 전혀 다릅니다. – bioffe

답변

6
+0

+1 놀라운 답변입니다. iOS에서 NSCache를 사용할 수 있는지 전혀 몰랐습니다. – Caleb

+0

@mrthys'NSCache'는 매우 간단한 인 메모리 캐시라는 것에주의하십시오. 인앱 메모리 경고가있는 경우 특정 시간 동안 캐시 만 처리하거나 캐시를 지우지 않습니다. 또한 메모리 내 캐시이므로 앱이 닫히거나 백그라운드에서 닫히면 캐시가 사라집니다. 'NSCache'는 확실히 유용한 도구 일 수 있지만, 실제로는 다른 응용 프로그램의 메모리 부족이 감지되면 캐시 된 항목을 제거 할 수있는 NSDictionary입니다. – memmons

0

이 문제에 대한 다양한 솔루션이 있고 그것을 할 "권리"방법이 없다. 몇 가지 인기있는 옵션은 다음과 같습니다.

코어 데이터 - 지속성을위한 애플의 프레임 워크. 매우 성능이 뛰어나지 만 더 어렵습니다. SQLite - 빠르면서도 유연하지만 베어 본. Plists - 기본적으로 파일을 디스크에 쓰면 수동으로 읽고 쓸 필요가 있습니다. NSUserDefaults - 가장 가벼운 "키 - 값"옵션입니다. 4 가지를 모두 읽고 자신에게 가장 적합한 것을 확인해보십시오.

관련 문제