manpagez: man pages & more
man barrier(3)
Home | html | info | man
barrier(3)               BSD Library Functions Manual               barrier(3)


NAME

     OSMemoryBarrier -- memory barrier to order loads and stores


LIBRARY

     Standard C Library (libc, -lc)


SYNOPSIS

     #include <libkern/OSAtomic.h>

     void
     OSMemoryBarrier(void);


DESCRIPTION

     OSMemoryBarrier() strictly orders memory accesses in a weakly ordered
     memory model such as with PowerPC, by creating a barrier.  All loads and
     stores executed in sequential program order before the barrier will com-
     plete with respect to the memory coherence mechanism, before any load or
     store executed after the barrier.  Used with an atomic operation, the
     barrier can be used to create custom synchronization protocols as an
     alternative to the spinlock or queue/dequeue operations.  Note that this
     barrier does not order uncached loads and stores.  On a uniprocessor, the
     barrier operation is typically optimized into a nop.


SEE ALSO

     atomic(3), spinlock(3)

Darwin                           May 26, 2004                           Darwin

Mac OS X 10.8 - Generated Sun Aug 26 13:38:31 CDT 2012
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.