Я использую SDwebimage Framework для кэширования изображений, поэтому загрузка количества изображений увеличивается ежедневно, поэтому через 3-4 дня использования приложения вызывает увеличение кеша, что приводит к ухудшению производительности приложения. производительностьКэш sdwebimage достигает максимального размера
1
A
ответ
0
Взгляните на это ТАК размещать here
Вы можете установить период для того, как долго будет длиться кэш, а затем она будет очищена. Кроме того, вы можете поиграть с значением maxCacheSize в SDImageCache.m в файле cleanDiskWithCompletionBlock.
// If our remaining disk cache exceeds a configured maximum size, perform a second
// size-based cleanup pass. We delete the oldest files first.
if (self.maxCacheSize > 0 && currentCacheSize > self.maxCacheSize) {
// Target half of our maximum cache size for this cleanup pass.
const NSUInteger desiredCacheSize = self.maxCacheSize/2;
// Sort the remaining cache files by their last modification time (oldest first).
NSArray *sortedFiles = [cacheFiles keysSortedByValueWithOptions:NSSortConcurrent
usingComparator:^NSComparisonResult(id obj1, id obj2) {
return [obj1[NSURLContentModificationDateKey] compare:obj2[NSURLContentModificationDateKey]];
}];
// Delete files until we fall below our desired cache size.
for (NSURL *fileURL in sortedFiles) {
if ([_fileManager removeItemAtURL:fileURL error:nil]) {
NSDictionary *resourceValues = cacheFiles[fileURL];
NSNumber *totalAllocatedSize = resourceValues[NSURLTotalFileAllocatedSizeKey];
currentCacheSize -= [totalAllocatedSize unsignedIntegerValue];
if (currentCacheSize < desiredCacheSize) {
break;
}
}
}
}
Большое спасибо @ashes к пеплу – user1330379
как установить некоторый максимальный предел, как 20 МБ в приведенном выше блоке кода @AshesToAshes –