src/server/ucx/atomic.h

Sat, 06 Oct 2012 13:00:07 +0200

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Sat, 06 Oct 2012 13:00:07 +0200
changeset 36
450d2d5f4735
parent 33
96dbfe4f91e5
permissions
-rw-r--r--

server can reload configuration

/* 
 * File:   atomic.h
 * Author: olaf
 *
 * Created on 29. Mai 2012, 09:38
 */

#ifndef ATOMIC_H
#define	ATOMIC_H

#include <inttypes.h>

#ifdef	__cplusplus
extern "C" {
#endif

void ucx_atomic_inc_8(volatile uint8_t *t);

void ucx_atomic_inc_16(volatile uint16_t *t);

void ucx_atomic_inc_32(volatile uint32_t *t);

void ucx_atomic_inc_64(volatile uint64_t *t);

void ucx_atomic_dec_8(volatile uint8_t *t);

void ucx_atomic_dec_16(volatile uint16_t *t);

void ucx_atomic_dec_32(volatile uint32_t *t);

void ucx_atomic_dec_64(volatile uint64_t *t);

uint8_t ucx_atomic_dec_8_nv(volatile uint8_t *t);

uint16_t ucx_atomic_dec_16_nv(volatile uint16_t *t);

uint32_t ucx_atomic_dec_32_nv(volatile uint32_t *t);

uint64_t ucx_atomic_dec_64_nv(volatile uint64_t *t);


#ifdef	__cplusplus
}
#endif

#endif	/* ATOMIC_H */

mercurial