Fancy caching with on-disk persistence
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
SYCache.h Added UIImage category Oct 31, 2011
SYCache.m Ignore nil objects Oct 31, 2011



Simple in memory and on disk cache. It's backed by an NSCache in memory, so it automatically purges itself when memory gets low. Purged memory keys will automatically be loaded from disk the next time the are requested.


The API is simple.

- (id)objectForKey:(NSString *)key;
- (void)objectForKey:(NSString *)key usingBlock:(void (^)(id object))block;
- (void)setObject:(id)object forKey:(NSString *)key;

See SYCache.h for the full list of methods.

Adding to Your Project

Simply add SYCache.h and SYCache.m to your project.


If you are including SYCache in a project that uses Automatic Reference Counting (ARC) enabled, you will need to set the -fno-objc-arc compiler flag on all of the SYCache source files. To do this in Xcode, go to your active target and select the "Build Phases" tab. In the "Compiler Flags" column, set -fno-objc-arc for each of the SYCache source files.