私はmongoengineを使用していますが、潜在的な競合状態のインシデントに遭遇しているようです。簡単な例として、次のようなコードがあります
def changeModel(newitemL, olditemD)
model.randomList.append(newitemL)
model.randomDict.pop(olditemD,None)
model.save()
そのため、2 人のユーザーが異なるアイテムでこのアクションを実行しようとすると、保存されたモデルに対する 1 人のユーザーの変更のみが表示されることがあります。これを避けるために、ListFields と DictFields をアトミックに変更する方法はありますか?