3,2 Funciones de bloqueo
Las funciones descritas en esta sección manipulan bloqueos utilizado para la sincronización.
Para las funciones siguientes, la variable de bloqueo debe ser de tipo omp_lock_t.Esta variable debe realizarse únicamente con estas funciones.Todas las funciones de bloqueo requieren un argumento con un puntero al tipo de omp_lock_t .
La función de omp_init_lock inicializa un bloqueo simple.
la función de omp_destroy_lock quita un bloqueo simple.
La función de omp_set_lock espera hasta que un bloqueo simple esté disponible.
Las versiones de la función de omp_unset_lock un bloqueo simple.
las pruebas de función de omp_test_lock un bloqueo simple.
Para las funciones siguientes, la variable de bloqueo debe ser de tipo omp_nest_lock_t.Esta variable debe realizarse únicamente con estas funciones.Todas las funciones de bloqueo encajables requieren un argumento con un puntero al tipo de omp_nest_lock_t .
La función de omp_init_nest_lock inicializa un bloqueo encajable.
la función de omp_destroy_nest_lock quita un bloqueo encajable.
La función de omp_set_nest_lock espera hasta que un bloqueo encajable esté disponible.
Las versiones de la función de omp_unset_nest_lock un bloqueo encajable.
las pruebas de función de omp_test_nest_lock un bloqueo encajable.
Las funciones de bloqueo de OpenMP tienen acceso a la variable de bloqueo de modo que lean y actualizar siempre el valor más actual de la variable de bloqueo.Por consiguiente, no es necesario que un programa de OpenMP incluya las directivas explícitas de vaciado para asegurarse de que el valor de variable de bloqueo es coherente entre subprocesos diferentes.(Puede haber una necesidad de las directivas de vaciado de crear los valores de otras variables coherentes.)