Sha256: 57d105cf0de2a1d2cf7932abba9cc46138c8d2149497ebd25b622d80f402ea69
Contents?: true
Size: 550 Bytes
Versions: 4
Compression:
Stored size: 550 Bytes
Contents
# frozen_string_literal: true require "thread" module Dassets; end # This is a thread-safe in-memory cache. class Dassets::MemCache def initialize @hash = {} @write_mutex = ::Mutex.new end def keys @hash.keys end def [](key) @hash[key] end def []=(key, value) @write_mutex.synchronize{ @hash[key] = value } end end # This is a no-op cache object. This is the default cache in use and "turns # off caching. class Dassets::NoCache def keys [] end def [](key) end def []=(key, value) end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
dassets-0.15.3 | lib/dassets/cache.rb |
dassets-0.15.2 | lib/dassets/cache.rb |
dassets-0.15.1 | lib/dassets/cache.rb |
dassets-0.15.0 | lib/dassets/cache.rb |