instance method
decrement
Ruby on Rails 8.1.2
Since v5.2.8.1Signature
decrement(name, amount = 1, options = nil)
Decrement a cached integer value using the memcached decr atomic operator. Returns the updated value.
If the key is unset or has expired, it will be set to 0. Memcached does not support negative counters.
cache.decrement("foo") # => 0
To set a specific value, call #write passing raw: true:
cache.write("baz", 5, raw: true) cache.decrement("baz") # => 4
Decrementing a non-numeric value, or a value written without raw: true, will fail and return nil.
To read the value later, call #read_counter:
cache.decrement("baz") # => 3 cache.read_counter("baz") # 3
Parameters
-
namereq -
amountopt = 1 -
optionsopt = nil
Source
# File activesupport/lib/active_support/cache/mem_cache_store.rb, line 165
def decrement(name, amount = 1, options = nil)
options = merged_options(options)
key = normalize_key(name, options)
instrument(:decrement, key, amount: amount) do
rescue_error_with nil do
@data.with { |c| c.decr(key, amount, options[:expires_in], 0) }
end
end
end
Defined in activesupport/lib/active_support/cache/mem_cache_store.rb line 165
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveSupport::Cache::MemCacheStore