Back to index

glibc  2.9
Functions
pthread_spin_trylock.c File Reference
#include <errno.h>
#include <atomic.h>
#include "pthreadP.h"

Go to the source code of this file.

Functions

int pthread_spin_trylock (pthread_spinlock_t *lock)

Function Documentation

int pthread_spin_trylock ( pthread_spinlock_t *  lock)

Definition at line 24 of file pthread_spin_trylock.c.

{
#if 0
  volatile unsigned int *a = __ldcw_align (lock);

  return __ldcw (a) ? 0 : EBUSY;
#endif

  return atomic_compare_and_exchange_val_acq(lock, 1, 0) ? EBUSY : 0;

}