Потому, что возникает типичная проблема, которая такая же, как с изоляцией транзакций в sql-базах, вид сбоку. Ты действуешь над данными, но ты не знаешь, что данные изменились вне твоей транзакции (копии проекции данных с сервера, которые ты сейчас у себя держишь, но которые уже могли измениться за несколько тиков).