Freigeben über


3.2.5 omp_test_lock und omp_test_nest_lock Funktionen

Diese Funktionen versuchen, eine Sperre festzulegen Ausführung des Threads blockiert aber nicht.Es wird folgendes Format verwendet:

#include <omp.h>
int omp_test_lock(omp_lock_t *lock);
int omp_test_nest_lock(omp_nest_lock_t *lock);

Das Argument muss zu einer initialisierten Sperren variable veranschaulichen.Diese Funktionen versuchen, eine Sperre auf die gleiche Weise wie omp_set_lock und omp_set_nest_lockfestzulegen, mit dem Unterschied, dass sie werden nicht blockiert die Ausführung des Threads.

Für eine einfache Sperre omp_test_lock gibt die Funktion einen Wert ungleich 0 (null) zurück, wenn die Sperre erfolgreich festgelegt wurde. Andernfalls wird (null) zurück.

Für eine schachtelbare Sperre gibt die Anzahl der Schachtelungs die neue Funktion omp_test_nest_lock zurück, wenn die Sperre erfolgreich festgelegt wurde. Andernfalls wird (null) zurück.