doc/examples: enhance rcu-flavor-qsbr example
[urcu.git] / doc / examples / rcu-flavor-qsbr / rcu-flavor-qsbr.c
index a7a6ff45e01269b5f22b6ec0916064a653390511..2b722c0a1e0dcf1fda29236534b6f99758be6379 100644 (file)
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#define _LGPL_SOURCE
-#include <urcu-qsbr.h>
-#include <urcu/rculist.h>
-#include <urcu/compiler.h>
-
 #include <stdlib.h>
 #include <stdio.h>
 #include <stdint.h>
 #include <inttypes.h>
 
+#include <urcu-qsbr.h>         /* QSBR RCU flavor */
+#include <urcu/rculist.h>      /* List example */
+#include <urcu/compiler.h>     /* For CAA_ARRAY_SIZE */
+
 /*
  * This is a mock-up example where updates and RCU traversals are
  * performed by the same thread to keep things simple on purpose.
@@ -110,7 +109,9 @@ int main(int argc, char **argv)
 
        /*
         * For QSBR flavor, we need to explicitly announce quiescent
-        * states.
+        * states. Here is how it is done. This should be performed by
+        * every online registered RCU threads in the program
+        * periodically.
         */
        rcu_quiescent_state();
 
@@ -127,7 +128,8 @@ int main(int argc, char **argv)
 
        /*
         * Waiting for previously called call_rcu handlers to complete
-        * before program exits is a good practice.
+        * before program exits, or in library destructors, is a good
+        * practice.
         */
        rcu_barrier();
 
This page took 0.022258 seconds and 4 git commands to generate.