Skip to content

andriitishchenko/YYCache

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YYCache

License MIT  Carthage compatible  [Cocoapods](http://cocoapods.org/?q= YYCache)  [Cocoapods](http://cocoapods.org/?q= YYCache)  Support

High performance cache framework for iOS.

Performance

Memory cache benchmark result

Disk benchmark result

You may download and compile the lastest version of sqlite and ignore the libsqlite3.dylib in iOS system to get higher performance.

See Benchmark/CacheBenchmark.xcodeproj for more benchmark case.

Features

  • LRU: Objects can be evicted with least-recently-used algorithm.
  • Limitation: Cache limitation can be controlled with count, cost, age and free space.
  • Compatibility: The API is similar to NSCache, all methods are thread-safe.
  • Memory Cache
    • Release Control: Objects can be released synchronously/asynchronously on main thread or background thread.
    • Automatically Clear: It can be configured to automatically evict objects when receive memory warning or app enter background.
  • Disk Cache
    • Customization: It supports custom archive and unarchive method to store object which does not adopt NSCoding.
    • Storage Type Control: It can automatically decide the storage type (sqlite / file) for each object to get better performance.

Installation

Cocoapods

  1. Add pod "YYCache" to your Podfile.
  2. Run pod install or pod update.
  3. Import <YYCache/YYCache.h>

Carthage

  1. Add github "ibireme/YYCache" to your Cartfile.
  2. Run carthage update --platform ios and add the framework to your project.
  3. Import <YYCache/YYCache.h>

Manually

  1. Download all the files in the YYCache subdirectory.
  2. Add the source files to your Xcode project.
  3. Link with required frameworks:
    • UIKit.framework
    • CoreFoundation.framework
    • QuartzCore.framework
    • sqlite3
  4. Import YYCache.h.

About

This library supports iOS 6.0 and later.

License

YYCache is provided under the MIT license. See LICENSE file for details.

中文链接

中文介绍和性能评测

About

High performance cache framework for iOS.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Objective-C 99.5%
  • Ruby 0.5%