Next: omp_unset_nest_lock, Previous: omp_set_nest_lock, Up: Runtime Library Routines [Contents][Index]

### 2.36 `omp_test_nest_lock` – Test and set nested lock if available

Description:

  Before setting a nested lock, the lock variable must be initialized by `omp_init_nest_lock`. Contrary to `omp_set_nest_lock`, `omp_test_nest_lock` does not block if the lock is not available. If the lock is already held by the current thread, the new nesting count is returned. Otherwise, the return value equals zero.

C/C++:

  Prototype: | `int omp_test_nest_lock(omp_nest_lock_t *lock);`

Fortran:

  Interface: | `logical function omp_test_nest_lock(nvar)`
  | `integer(omp_nest_lock_kind), intent(inout) :: nvar`

See also:

  omp_init_lock, omp_set_lock, omp_set_lock

Reference:

  OpenMP specification v4.0, Section 3.3.5.