マルチスレッドのプログラミング

スピンロックの解除

獲得されたスピンロックを解放するには、pthread_spin_unlock(3C) 関数を使用します。

pthread_spin_unlock() の構文

int  pthread_spin_unlock(pthread_spinlock_t *lock);
#include <pthread.h>

pthread_spinlock_t lock;
int ret;

ret = pthread_spin_unlock(&lock); /* spinlock is unlocked */

pthread_spin_unlock() の戻り値

pthread_spin_unlock() 関数は、正常終了時に 0 を返します。それ以外の場合は、次のいずれかのエラーコードが返されます。


EPERM

説明:

呼び出しスレッドがロックを保持していません。


EINVAL

説明:

lock で指定された値が、初期化されたスピンロックオブジェクトを表していません。