¿Un mecanismo de bloqueo al usar Parse?

Una solución es confiar en la marca de tiempo de creación. En aras de la simplicidad, supongamos que no se pueden crear dos usuarios con la misma marca de tiempo (podemos extender fácilmente nuestra solución para resolver ese problema).
Cada vez que se crea un usuario, haga lo siguiente:

1. Obtenga el primer usuario con una marca de tiempo anterior a la mía que no esté asociada con otro usuario.
2. Marque a este usuario como asociado con nosotros.
3. Si no existe dicho usuario, espere un poco (digamos tres segundos) y verifique si estamos asociados con alguien. El siguiente usuario debe marcarnos como asociados.

Para crear una asociación, cree un campo en el primer usuario (cronológicamente) que contenga el otro objeto.

Si dos o más usuarios tienen la misma marca de tiempo, todos los usuarios esperan ociosamente, excepto el más bajo (ordenado por id) que soluciona el problema.