A thread-safe Swift cache with LRU support, composed of DiskCache and MemoryCache components.
Track is a caching library written in Swift that provides thread-safe storage for iOS and macOS applications. It combines DiskCache and MemoryCache components, both supporting LRU (Least Recently Used) eviction policies to manage data efficiently. The library solves the problem of safely storing and retrieving temporary data while optimizing memory and disk usage.
iOS and macOS developers who need a reliable, thread-safe caching solution for managing temporary data like images, API responses, or user sessions in their applications.
Developers choose Track for its built-in thread safety, efficient LRU implementation, and support for both synchronous and asynchronous operations, all within a clean Swift API. It offers a lightweight alternative to more complex caching systems while providing essential features like sequence support and flexible eviction controls.
Track is a thread safe cache write by Swift. Composed of DiskCache and MemoryCache which support LRU.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses dispatch semaphore and concurrent queues to prevent deadlocks, ensuring safe concurrent access as detailed in the README.
Implements a fast linked list for least-recently-used elimination based on size, cost, and age limits, optimizing resource management.
Offers both synchronous and asynchronous caching methods, allowing developers to balance performance and responsiveness in their apps.
Supports SequenceType and Generator for use with for...in loops, map, filter, and subscript access, enabling intuitive cache iteration and transformation.
Only targets iOS and macOS, excluding other Apple platforms like watchOS or tvOS, and lacks cross-platform capabilities.
The README does not mention encryption features, making it unsuitable for caching sensitive data without additional security measures.
Badges indicate Swift 3.0, while installation references Swift 5.0, suggesting documentation may lag behind current versions or cause confusion.