Una condición de carrera ocurre cuando dos o más tareas usan la misma información casi al mismo tiempo y el orden en que se ejecutan cambia el resultado.
Imagina que queda un solo artículo en una estantería. Dos personas lo ven y tratan de cogerlo a la vez; el registro podría acabar mostrando una cantidad incorrecta. El problema no es que alguien se moviera despacio, sino que las acciones se solaparon.
Los programas pueden evitar algunas condiciones de carrera coordinando el acceso a la información compartida. Pueden ser difíciles de reproducir porque el momento de ejecución cambia en cada intento.
