dwww Home | Manual pages | Find package

ZMQ_ATOMIC_COUNTER_I(3)           0MQ Manual           ZMQ_ATOMIC_COUNTER_I(3)

NAME
       zmq_atomic_counter_inc - increment an atomic counter

SYNOPSIS
       int zmq_atomic_counter_inc (void *counter);

DESCRIPTION
       The zmq_atomic_counter_inc function increments an atomic counter in a
       threadsafe fashion. This function uses platform specific atomic
       operations.

RETURN VALUE
       The zmq_atomic_counter_inc() function returns the old value of the
       counter, before incrementing.

EXAMPLE
       Test code for atomic counters.

           void *counter = zmq_atomic_counter_new ();
           assert (zmq_atomic_counter_value (counter) == 0);
           assert (zmq_atomic_counter_inc (counter) == 0);
           assert (zmq_atomic_counter_inc (counter) == 1);
           assert (zmq_atomic_counter_inc (counter) == 2);
           assert (zmq_atomic_counter_value (counter) == 3);
           assert (zmq_atomic_counter_dec (counter) == 1);
           assert (zmq_atomic_counter_dec (counter) == 1);
           assert (zmq_atomic_counter_dec (counter) == 0);
           zmq_atomic_counter_set (counter, 2);
           assert (zmq_atomic_counter_dec (counter) == 1);
           assert (zmq_atomic_counter_dec (counter) == 0);
           zmq_atomic_counter_destroy (&counter);
           return 0;

SEE ALSO
       zmq_atomic_counter_new(3) zmq_atomic_counter_set(3)
       zmq_atomic_counter_dec(3) zmq_atomic_counter_value(3)
       zmq_atomic_counter_destroy(3)

AUTHORS
       This page was written by the 0MQ community. To make a change please
       read the 0MQ Contribution Policy at
       http://www.zeromq.org/docs:contributing.

0MQ 4.3.4                         01/18/2023           ZMQ_ATOMIC_COUNTER_I(3)

Generated by dwww version 1.15 on Wed Jun 26 18:05:07 CEST 2024.