Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

atomic_dec_ptr(3) [netbsd man page]

ATOMIC_DEC(3)						   BSD Library Functions Manual 					     ATOMIC_DEC(3)

NAME
atomic_dec, atomic_dec_32, atomic_dec_uint, atomic_dec_ulong, atomic_dec_ptr, atomic_dec_64, atomic_dec_32_nv, atomic_dec_uint_nv, atomic_dec_ulong_nv, atomic_dec_ptr_nv, atomic_dec_64_nv -- atomic decrement operations SYNOPSIS
#include <sys/atomic.h> void atomic_dec_32(volatile uint32_t *ptr); void atomic_dec_uint(volatile unsigned int *ptr); void atomic_dec_ulong(volatile unsigned long *ptr); void atomic_dec_ptr(volatile void *ptr); void atomic_dec_64(volatile uint64_t *ptr); uint32_t atomic_dec_32_nv(volatile uint32_t *ptr); unsigned int atomic_dec_uint_nv(volatile unsigned int *ptr); unsigned long atomic_dec_ulong_nv(volatile unsigned long *ptr); void * atomic_dec_ptr_nv(volatile void *ptr); uint64_t atomic_dec_64_nv(volatile uint64_t *ptr); DESCRIPTION
The atomic_dec family of functions decrement (by one) the variable referenced by ptr in an atomic fashion. The *_nv() variants of these functions return the new value. The 64-bit variants of these functions are available only on platforms that can support atomic 64-bit memory access. Applications can check for the availability of 64-bit atomic memory operations by testing if the pre-processor macro __HAVE_ATOMIC64_OPS is defined. SEE ALSO
atomic_ops(3) HISTORY
The atomic_dec functions first appeared in NetBSD 5.0. BSD
April 11, 2007 BSD

Check Out this Related Man Page

ATOMIC_DEC(3)						   BSD Library Functions Manual 					     ATOMIC_DEC(3)

NAME
atomic_dec, atomic_dec_32, atomic_dec_uint, atomic_dec_ulong, atomic_dec_ptr, atomic_dec_64, atomic_dec_32_nv, atomic_dec_uint_nv, atomic_dec_ulong_nv, atomic_dec_ptr_nv, atomic_dec_64_nv -- atomic decrement operations SYNOPSIS
#include <sys/atomic.h> void atomic_dec_32(volatile uint32_t *ptr); void atomic_dec_uint(volatile unsigned int *ptr); void atomic_dec_ulong(volatile unsigned long *ptr); void atomic_dec_ptr(volatile void *ptr); void atomic_dec_64(volatile uint64_t *ptr); uint32_t atomic_dec_32_nv(volatile uint32_t *ptr); unsigned int atomic_dec_uint_nv(volatile unsigned int *ptr); unsigned long atomic_dec_ulong_nv(volatile unsigned long *ptr); void * atomic_dec_ptr_nv(volatile void *ptr); uint64_t atomic_dec_64_nv(volatile uint64_t *ptr); DESCRIPTION
The atomic_dec family of functions decrement (by one) the variable referenced by ptr in an atomic fashion. The *_nv() variants of these functions return the new value. The 64-bit variants of these functions are available only on platforms that can support atomic 64-bit memory access. Applications can check for the availability of 64-bit atomic memory operations by testing if the pre-processor macro __HAVE_ATOMIC64_OPS is defined. SEE ALSO
atomic_ops(3) HISTORY
The atomic_dec functions first appeared in NetBSD 5.0. BSD
April 11, 2007 BSD
Man Page

8 More Discussions You Might Find Interesting

1. Programming

pointers

is this a valid c declaration int (*ptr(int *b)); plz explain... (4 Replies)
Discussion started by: areef4u
4 Replies

2. Programming

pointer problem

could any one tell why the following is showing segmentation fault while using **ptr but working fine using **a #include<stdio.h> ... (1 Reply)
Discussion started by: useless79
1 Replies

3. Programming

int *ptr + max possible value

From reading my C book, Im aware that the integers have a maximum value which depends on what type of processor you are using (since they use 16-bit or 32-bit instructions). Now I know pointers are very flexible, since they can reference anything, but in the case of integer pointers, can they... (4 Replies)
Discussion started by: JamesGoh
4 Replies

4. Solaris

Porting C++ 32-bit code on 64-bit Solaris

Hi, I am trying to convert 32-bit code to 64-bit. I have defined function int main() { int* l; size_t len1; fun(len1); return 0; } void fun(int* ptr) { cout<<"\nsizeof(ptr)"<<sizeof(ptr); } However while compiling getting error as : Error: Formal argument ptr... (2 Replies)
Discussion started by: amit_27
2 Replies

5. Shell Programming and Scripting

thread creation

#include <stdio.h> #include <stdlib.h> #include <pthread.h> void *fork_thread(void *ptr ); main() { pthread_t thread1; char *message1 = "Thread 1"; int iret1; iret1 = pthread_create( &thread1, NULL, fork_thread, (void*) message1); exit(0); } Void *fork_thread(... (3 Replies)
Discussion started by: annapurna konga
3 Replies

6. Shell Programming and Scripting

thread creation

Void *fork_thread( void *ptr ) i am getting error in this line please help me out (1 Reply)
Discussion started by: annapurna konga
1 Replies

7. Programming

C++ segmentation fault while checking for null pointer

void disptree(node *ptr) { if ((ptr->left) !=NULL) disptree(ptr->left); cout<<"Position:"<<ptr->pos<<" Data:"<<ptr->data<<endl; if ((ptr->right)!=NULL; disptree(ptr->right); } i'm getting a segmentation fault at the red line. i cannot understand what's the problem.... (3 Replies)
Discussion started by: vijaymrt
3 Replies

8. Programming

Segfaults on pointer deletion

Hey Everyone, I have a check similar to this: if (ptr) { delete ptr; ptr = null; }When I'm debugging in AIX (using dbx), if I attempt to print the value of 'ptr' it says "ptr is not defined" - however, it still enters that if block. So, I'm getting segfaults on the delete... (8 Replies)
Discussion started by: ctote
8 Replies