
Go to the source code of this file.
Classes | |
| struct | atomic_t |
Defines | |
| #define | LOCK "lock ; " |
| Copyright (C) 2007 Doug Judd (Zvents, Inc.) | |
| #define | ATOMIC_INIT(i) { (i) } |
| #define | atomic_read(v) ((v)->counter) |
| atomic_read - read atomic variable | |
| #define | atomic_set(v, i) (((v)->counter) = (i)) |
| atomic_set - set atomic variable | |
| #define | atomic_clear_mask(mask, addr) |
| #define | atomic_set_mask(mask, addr) |
| #define | atomic_inc_return(v) (atomic_add_return(1,v)) |
| #define | atomic_dec_return(v) (atomic_sub_return(1,v)) |
Functions | |
| static __inline__ void | atomic_add (int i, atomic_t *v) |
| atomic_add - add integer to atomic variable | |
| static __inline__ void | atomic_sub (int i, atomic_t *v) |
| atomic_sub - subtract the atomic variable | |
| static __inline__ int | atomic_add_return (int i, atomic_t *v) |
| atomic_add_return - add and return | |
| static __inline__ int | atomic_sub_return (int i, atomic_t *v) |
| static __inline__ int | atomic_sub_and_test (int i, atomic_t *v) |
| atomic_sub_and_test - subtract value from variable and test result | |
| static __inline__ void | atomic_inc (atomic_t *v) |
| atomic_inc - increment atomic variable | |
| static __inline__ void | atomic_dec (atomic_t *v) |
| atomic_dec - decrement atomic variable | |
| static __inline__ int | atomic_dec_and_test (atomic_t *v) |
| atomic_dec_and_test - decrement and test | |
| static __inline__ int | atomic_inc_and_test (atomic_t *v) |
| atomic_inc_and_test - increment and test | |
| static __inline__ int | atomic_add_negative (int i, atomic_t *v) |
| atomic_add_negative - add and test if negative | |
| #define atomic_clear_mask | ( | mask, | |
| addr | |||
| ) |
| #define atomic_read | ( | v ) | ((v)->counter) |
| #define atomic_set | ( | v, | |
| i | |||
| ) | (((v)->counter) = (i)) |
| #define atomic_set_mask | ( | mask, | |
| addr | |||
| ) |
| #define LOCK "lock ; " |
Copyright (C) 2007 Doug Judd (Zvents, Inc.)
This file is part of Hypertable.
Hypertable is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or any later version.
Hypertable is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
| static __inline__ void atomic_add | ( | int | i, |
| atomic_t * | v | ||
| ) | [static] |
| static __inline__ int atomic_add_negative | ( | int | i, |
| atomic_t * | v | ||
| ) | [static] |
| static __inline__ int atomic_add_return | ( | int | i, |
| atomic_t * | v | ||
| ) | [static] |
| static __inline__ void atomic_dec | ( | atomic_t * | v ) | [static] |
| static __inline__ int atomic_dec_and_test | ( | atomic_t * | v ) | [static] |
| static __inline__ void atomic_inc | ( | atomic_t * | v ) | [static] |
| static __inline__ int atomic_inc_and_test | ( | atomic_t * | v ) | [static] |
| static __inline__ void atomic_sub | ( | int | i, |
| atomic_t * | v | ||
| ) | [static] |
| static __inline__ int atomic_sub_and_test | ( | int | i, |
| atomic_t * | v | ||
| ) | [static] |
1.7.2