Al terminar de usarlo, el dueño debe desbloquear, para permitir que otro proceso/hilo pueda tomarlo a su vez.
Esta acción debe esperar hasta que el cerrojo se encuentre libre, para garantizar la exclusión mutua.
En general hay un número de restricciones sobre los cerrojos, aunque no son las mismas en todos los sistemas.
Estas son: Algo muy importante es que todos los procesos/hilos deben utilizar el mismo protocolo para bloquear y desbloquear los cerrojos en el acceso a los recursos, ya que si mientras dos procesos/hilos utilizan el cerrojo de forma correcta, existe otro que simplemente accede a los datos protegidos, no se garantiza la exclusión mutua y pueden darse condiciones de carrera y errores en los resultados.
Al finalizar su sección crítica, el dueño del cerrojo debe desbloquearlo mediante la función unlock().