3.2.3 Функции omp_set_lock и omp_set_nest_lock
Каждая из этих функций блокирующий поток, выполняющий функцию до тех пор, пока определенная блокировка не будет доступна, а затем устанавливает блокировки. Простая блокировка Разблокированна если она доступна. Nestable блокировка доступна, если она Разблокированна или если она уже принадлежит потоком выполнения функции. Формат следующий:
#include <omp.h>
void omp_set_lock(omp_lock_t *lock);
void omp_set_nest_lock(omp_nest_lock_t *lock);
Для простой блокировки, аргумент omp_set_lock функция должна указывать на инициализированной переменной блокировки. Владение блокировки о в поток при выполнении функции.
Для nestable блокировки, аргумент omp_set_nest_lock функция должна указывать на инициализированной переменной блокировки. Количество вложенности увеличивается и или сохраняет поток, владельца блокировки.