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.
- ¿Quiénes son los mayores desarrolladores de aplicaciones móviles (en términos de ingresos, tamaño, base de clientes, presencia global, etc.)?
- ¿Cuáles son las herramientas de prueba de código abierto utilizadas para las pruebas de aplicaciones móviles?
- ¿Debo convertirme en desarrollador de aplicaciones de Android o desarrollador de aplicaciones informáticas?
- ¿Qué es mejor: aplicación nativa o aplicación híbrida que incluye almacenamiento de datos?
- Cómo organizar su flujo de trabajo al desarrollar aplicaciones móviles
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.