]>
git.saurik.com Git - wxWidgets.git/blob - docs/doxygen/groups/funcmacro_atomic.h
   1 ///////////////////////////////////////////////////////////////////////////// 
   2 // Name:        funcmacro_atomic.h 
   3 // Purpose:     Atomic Operation function and macro group docs 
   4 // Author:      wxWidgets team 
   5 // RCS-ID:      $Id: funcmacro_gdi.h 52454 2008-03-12 19:08:48Z BP $ 
   6 // Licence:     wxWindows licence 
   7 ///////////////////////////////////////////////////////////////////////////// 
  11 @defgroup group_funcmacro_atomic Atomic Operations 
  12 @ingroup group_funcmacro 
  14 When using multi-threaded applications, it is often required to access or 
  15 modify memory which is shared between threads. Atomic integer and pointer 
  16 operations are an efficient way to handle this issue (another, less efficient, 
  17 way is to use a wxMutex or wxCriticalSection). A native implementation exists 
  18 for Windows, Linux, Solaris and Mac OS X; for others, a wxCriticalSection is 
  19 used to protect the data. 
  21 One particular application is reference counting (used by so-called 
  22 @ref group_class_smartpointers "smart pointers"). 
  24 You should define your variable with the type wxAtomicInt in order to apply 
  25 atomic operations to it.