Qual a diferença entre findAndModify e update no MongoDB?

Estou um pouco confuso com ofindAndModify método no MongoDB. Qual é a vantagem disso sobre oupdate método? Para mim, parece que apenas retorna o item primeiro e depois o atualiza. Mas por que preciso devolver o item primeiro? Eu li oMongoDB: o guia definitivo e diz que é útil para manipular filas e executar outras operações que precisam de atomicidade de estilo get-and-set. Mas eu não entendi como isso alcança isso. Alguém pode me explicar isso?

questionAnswers(4)

yourAnswerToTheQuestion