Ver Mensaje Individual
  #8 (permalink)  
Antiguo 03/03/2003, 16:04
Nok
 
Fecha de Ingreso: abril-2001
Mensajes: 302
Antigüedad: 23 años
Puntos: 0
Atomicidad se refiere a que la operacion se realice como si fuera en un solo paso. El problema existe cuando hay concurrencia, es decir varios script ejecutandose al mismo tiempo sobre los mismo datos. Por eso se utiliza la atomicidad para garantizar que ningun script "pise" al otro.

Por ejemplo:

supongamos que nuestro scritp hace lo siguiente:
-Insertar registro.
-Obtener ultimo registro.
-Mostrar Id.

Si se esta ejecutando un solo script no hay problema alguno. El problema es cuando se ejecutan mas de uno, supongamos lo siguiente:

Sp1: script 1
Sp2: script 2

Sp1 -Insertar registro.
Sp2 -Insertar registro.
Sp2 -Obtener ultimo registro.
Sp1 -Obtener ultimo registro.
Sp1 -Mostrar Id.
Sp2 -Mostrar Id.


Veamos que pasa, si prestan atencion el script 1 esta obteniendo la informacion incorrecta, pues antes de obtener el ultimo registro, se ejecuto el script 2 modificando asi el dato obtenido. Esto es asi aunque no lo crean, es decir los scripts se ejecutan "mezclados". Por esto hace falta la atomicidad, o sea forzar a que se ejecute primero uno y luego el otro, asi no ocurren este tipo de cosas.

Bueno, espero haber aportado en algo.

Saludos
Nok.