내가있는 UIScrollView 3 UIImages을 가지고 있고 나는 다음과 같은 방법으로 이러한 이미지를 초기화하고 있습니다 :있는 UIImage 할당 문제
데이터가있는 NSData가 URL 요청에서받은 것입니다UIImage *dimage = [[UIImage alloc] initWithData:data];
. 이 후 이미지를 캐싱합니다. 메모리 할당을 확인할 때 3 개의 이미지가 각각 472KB를 차지하고 CoreGraphics 라이브러리의 "img_data_lock"이 할당을 요청했습니다. 디스크 캐시에서 해당 이미지의 크기를 확인할 때 각각 230Kb였습니다.
나는 더 많은 공간을 차지할 수 있습니다. 나는 나의 질문이 분명하기를 바랍니다.
감사합니다. TechZen, 디스크 캐시는 장치의 "/Library/Cache"폴더를 의미하므로 임시 캐시로 사용합니다.
그래서 내가 할 수 있는게 아무것도 없다. – Nnp
나는 문제가 있다고 생각하지 않는다. 디스크의 데이터 크기와 메모리의 개체 크기에는 거의 상관 관계가 없습니다. UIImage 객체는 데이터를 제거하지 않는 한 항상 데이터보다 커야합니다. 데이터가 UIImage 객체 자체가 아니라 그 객체라는 사실을 기억하십시오. UIImage 객체는 원시 데이터 외에 다른 정보를 저장해야합니다. 그 다른 정보는 그것을 데이터보다 크게 만듭니다. – TechZen
감사합니다. TechZen, 저는 메모리에 대해 걱정했습니다.이 특정보기로 이동하는 동안 메모리가 1MB 증가했을 때 제 관심을 끌었습니다. 그래서 지금은 단지 메모리를 절약하기 위해 scrollview에서 시간당 3 개의 이미지만을 유지할 것입니다. – Nnp