사진 폴더의 이미지로 차지하는 총 저장 공간을 계산하려고합니다. 나는 다음과 같이 코드를 작성했다. 나는 성공적으로 이미지를 가져올 수 있어요하지만,이 코드는 두 개의 문제가있다 - 언젠가 응용 프로그램 충돌을 얻을ios - 사진 폴더의 전체 이미지 크기를 계산합니다.
사진이있는 경우 7000 이미지를. 에서, 로그 나는 메모리 문제를 이해합니다.
이 코드를 여러 번 실행하면 6-7 시간 후에 응용 프로그램이 중단됩니다.
어떤 아이디어가 도움이 될 것입니다. 난 당신이 대신 그것을 실행하는 코드를 파견하는 이해하지 못하는 개별적으로
-(void)getPhotoSize{
dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
[_allPhotos enumerateObjectsUsingBlock:^(PHAsset *asset, NSUInteger idx, BOOL *stop) {
if (idx<_allPhotos.count&&asset) {
[[PHImageManager defaultManager] requestImageDataForAsset:asset options:nil resultHandler:^(NSData *imageData, NSString *dataUTI, UIImageOrientation orientation, NSDictionary *info) {
float imageSize = imageData.length;
imageSize = imageSize;
data.totalPictureSize+=imageSize;
_currentPhotoAsset=asset;
}];
}
}];
});
}
악기를 사용하여 메모리를 소비하는 것을 확인해 보셨습니까? –
예, 앞뒤로하면서 누출 여부를 확인하기 위해 메모리를 실행했습니다. 정확한 포인트 – Shohrab