]>
Commit | Line | Data |
---|---|---|
1 | ///////////////////////////////////////////////////////////////////////////// | |
2 | // Name: atomic.h | |
3 | // Purpose: interface of global functions | |
4 | // Author: wxWidgets team | |
5 | // Licence: wxWindows licence | |
6 | ///////////////////////////////////////////////////////////////////////////// | |
7 | ||
8 | ||
9 | // ============================================================================ | |
10 | // Global functions/macros | |
11 | // ============================================================================ | |
12 | ||
13 | /** @addtogroup group_funcmacro_atomic */ | |
14 | //@{ | |
15 | ||
16 | /** | |
17 | This function increments @a value in an atomic manner. | |
18 | ||
19 | Whenever possible wxWidgets provides an efficient, CPU-specific, | |
20 | implementation of this function. If such implementation is available, the | |
21 | symbol wxHAS_ATOMIC_OPS is defined. Otherwise this function still exists | |
22 | but is implemented in a generic way using a critical section which can be | |
23 | prohibitively expensive for use in performance-sensitive code. | |
24 | ||
25 | @header{wx/atomic.h} | |
26 | */ | |
27 | void wxAtomicInc(wxAtomicInt& value); | |
28 | ||
29 | /** | |
30 | This function decrements value in an atomic manner. | |
31 | ||
32 | Returns 0 if value is 0 after decrement or any non-zero value (not | |
33 | necessarily equal to the value of the variable) otherwise. | |
34 | ||
35 | @see wxAtomicInc | |
36 | ||
37 | @header{wx/atomic.h} | |
38 | */ | |
39 | wxInt32 wxAtomicDec(wxAtomicInt& value); | |
40 | ||
41 | //@} | |
42 |