omp_test_nest_lock (GNU libgomp)

#### 3.8.10 `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` – Initialize simple lock, `omp_set_lock` – Wait for and set simple lock, `omp_set_lock` – Wait for and set simple lock

Reference:

  OpenMP specification v4.5, Section 3.3.6.