logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

zmq_atomic_counter_destroy - destroy an atomic counter

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.5                                          03/31/2024                            ZMQ_ATOMIC_COUNTER_D(3)

Description

       The zmq_atomic_counter_destroy function destroys an atomic counter and nullifies its reference. Pass the
       address of an atomic counter (void **) rather than the counter itself. You must destroy all counters that
       you create, to avoid memory leakage. This function uses platform specific atomic operations.

Example

Testcodeforatomiccounters.

           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;

Name

       zmq_atomic_counter_destroy - destroy an atomic counter

Return Value

       The zmq_atomic_counter_destroy() function has no return value.

See Also

zmq_atomic_counter_new(3) zmq_atomic_counter_set(3) zmq_atomic_counter_inc(3) zmq_atomic_counter_dec(3)
       zmq_atomic_counter_value(3)

Synopsis

voidzmq_atomic_counter_destroy(void**counter_p);

See Also