【发布时间】:2014-07-11 20:23:59
【问题描述】:
我在 Sidekiq 中有两个线程并发,有一次我在我的一个模型中调用了以下方法:
def update_pending
update(pending_stats: self.pending_stats + 1)
end
我希望当两个作业都完成时,pending_stats 属性是两个,但它只是一个,即使两个线程都调用该方法。
如何确保两个线程实际上更新为正确的值?
【问题讨论】:
标签: ruby-on-rails ruby thread-safety race-condition sidekiq