Histórico da Página
CONTENIDO
- Visión General
- Ejemplo de uso
01. VISÃO GERAL
RecLock y MsUnlock son comandos cruciales en el lenguaje AdvPL para controlar la concurrencia en entornos donde múltiples usuarios acceden y modifican datos simultáneamente. RecLock se utiliza para bloquear registros específicos en archivos de datos, asegurando que solo un proceso a la vez pueda realizar cambios y previniendo así inconsistencias y corrupción de la información. Por otro lado, MsUnlock se utiliza para liberar estos bloqueos, permitiendo que otros procesos o usuarios puedan acceder y modificar los registros una vez que las operaciones hayan sido completadas.
02. EJEMPLO DE USO
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
USER FUNCTION EjemploRecLockMsUnlock()
LOCAL nRegistro := 1 // Número de registro a bloquear
// Bloqueando el registro utilizando RecLock
RecLock("ARCHIVO", nRegistro)
// Realizando operaciones de lectura y/o escritura en el registro bloqueado
// En este ejemplo, simulamos una operación ficticia de lectura
dbSeek("ARCHIVO", nRegistro)
dbSkip(1, "ARCHIVO")
// Liberando el bloqueo utilizando MsUnlock después de las operaciones
MsUnlock("ARCHIVO", nRegistro)
// Ejemplo de mensaje de éxito
MsgInfo("Operaciones completadas exitosamente!")
RETURN |
Libera el registro creado o bloqueado por la RecLock.
...
Verifica si el registro existe en la tabla SA1:
...
La recomendación es que se utilicen únicamente las funciones RecLock y MsUnlock.