2016-05-03 7 views

Antwort

0

Standardmäßig wartet with_lock nicht darauf, dass andere Sperren abgeschlossen werden. Wenn Sie also einen gleichzeitigen Zugriff haben, wird LockError ausgelöst, wenn Sie ihm nicht mitteilen, dass er warten soll.

Probieren Sie es wie folgt:

object = Object.first 
object.with_lock wait:true do 
    object.foo = "bar" 
    object.save! 
end