패키지, 저장소 및 앱 카테고리 검색

패키지 상세v0.3.0

ttl_cache

사용자가 정의한 시간-내-생존(TTL) 후에 항목이 만료되는 간단한 키-값 저장소

AndroidiOSLinuxmacOSWebWindows
30일 다운로드
10.3만
좋아요
3
Pub 점수
160

패키지 설치

flutter pub add ttl_cache

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

ttl_cache는 사용자가 정의한 시간 기반 만료(TTL)에 따라 항목을 자동으로 만료시키는 경량이고 Flutter 호환 패키지입니다. TTL이 만료된 후 오래된 항목을 제거함으로써 효율적인 일시적 데이터 저장을 가능하게 하며 메모리 사용량을 줄이고 데이터의 최신성을 보장합니다. API 응답, 세션 데이터 또는 임시 정보 캐싱에 적합합니다. 이 패키지는 Android, iOS, 웹 및 데스크톱 환경을 포함한 모든 주요 플랫폼을 지원합니다.

사용 사례

  • API 응답 캐싱
  • 세션 토큰 저장
  • 임시 데이터 지속성
  • 중복 네트워크 호출 줄이기
  • 단기 구성 관리
  • 앱 성능 향상

주요 기능

  • 자동 항목 만료
  • 크로스 플랫폼 지원
  • 간단한 키-값 인터페이스
  • 항목별로 구성 가능한 TTL
  • 메모리 효율적인 설계
  • 스레드 안전 작업

적합한 대상

  • 단기 데이터 저장이 필요한 앱
  • 경량 캐싱을 찾는 개발자
  • 자동 정리가 필요한 프로젝트
  • 신선도 보장이 있는 실시간 데이터
  • 고성능 애플리케이션

고려 사항

  • 앱 재시작 간에 항목이 유지되지 않습니다
  • TTL 정밀도는 시스템 시계에 따라 달라집니다
  • 장기 저장에 적합하지 않습니다
  • 내장된 직렬화 없음
  • 메모리 저장에 한정
  • 대규모 데이터셋의 수동 관리가 필요합니다

원본 README

연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.

ttl_cache

Powered by Mason License: MIT

A simple Dart key-value store with optional entry expiration.

Usage

A simple usage example:

import 'package:ttl_cache/ttl_cache.dart';

void main() {
  final cache = TtlCache<String, int>(defaultTtl: Duration(seconds: 1));

  // Set 'a' and 'b' with a default TTL of 1 second.
  // These lines are equivalent.
  cache['a'] = 1;
  cache.set('b', 2);

  // Set 'c' with a TTL of 3 seconds.
  cache.set('c', 3, ttl: Duration(seconds: 3));

  // Set 'd' with no TTL. This entry will remain in the cache until it is
  // manually removed.
  cache.set('d', 4, ttl: null);

  print(cache['a']); // 1
  print(cache['b']); // 2
  print(cache['c']); // 3
  print(cache['d']); // 4

  // Entries with the default TTL will have expired. 'c' has a TTL of 3 seconds
  // and will still be available.
  Future.delayed(Duration(seconds: 2), () {
    print(cache['a']); // null
    print(cache['b']); // null
    print(cache['c']); // 3
    print(cache['d']); // 4
  });

  // All entries from above with TTLs will have expired. 'd' has no TTL and will
  // still be available.
  Future.delayed(Duration(seconds: 4), () {
    // 'a' and 'b' will still be null
    print(cache['c']); // null
    print(cache['d']); // 4
  });
}

카테고리

의존성

의존성 목록 1 개

소스 저장소

이 패키지를 사용하는 프로젝트

아직 데이터가 없습니다.

순위