ruby-on-rails - Rails.cache.fetch 方法是原子的吗?

标签 ruby-on-rails memcached

具体来说,如果缓存中不存在该键,我想将键值对添加到缓存中。这可以使用 Rails.cache.fetch 自动完成吗?

谢谢!

最佳答案

你必须使用 :unless_exist 选项来编写:

Rails.cache.write(k, v, :unless_exist => true)

只有当键不存在时,该方法才会返回 true。否则,该方法返回 false:

if Rails.cache.write(k, v, :unless_exist => true)
  # do something only when the key wasn't there
end

关于ruby-on-rails - Rails.cache.fetch 方法是原子的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7743151/

相关文章:

java - 将spymemcached Java 客户端GetFuture 适配为Guava ListenableFuture

php - 获取错误 324 (net::ERR_EMPTY_RESPONSE)。在 kohana 中使用 memcache 时

ruby-on-rails - Rails4 : How to display the value one time only

ruby-on-rails - 无法在任何来源中找到 json-1.8.3 (Bundler::GemNotFound)

ruby-on-rails - 在邮件程序预览中找不到操作

ruby-on-rails - 使用 ActiveRecord 在数据库中存储记录的长时间运行的 ruby​​ 进程

ruby-on-rails - 如何在 Firefox 中显示 Font Awesome 图标?

java - 共享Memcache能保证列表的顺序吗?

python - 缓存一个大对象并从缓存中快速读取 flask

memcached - 为什么 memcached 不能跨节点同步