]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#1599] addressed comments
authorRazvan Becheriu <razvan@isc.org>
Wed, 15 Nov 2023 15:29:51 +0000 (17:29 +0200)
committerRazvan Becheriu <razvan@isc.org>
Wed, 15 Nov 2023 15:29:51 +0000 (17:29 +0200)
src/lib/util/multi_threading_mgr.cc
src/lib/util/thread_pool.h

index 57c7f8afd78d3f4f97a75bad25540e93a01b9802..4079cc2684d447ae5645c91272445c1080db200c 100644 (file)
@@ -45,9 +45,7 @@ MultiThreadingMgr::enterCriticalSection() {
     ++critical_section_count_;
     if (getMode() && !inside) {
         if (getThreadPoolSize()) {
-            // We simply pause without waiting for all tasks to complete.
-            // We could also call wait() and pause(false) so that all tasks are
-            // complete and threads are stopped.
+            // Simply pause after waiting for started tasks to complete.
             thread_pool_.pause();
         }
         // Now it is safe to call callbacks which can also create other CSs.
index ed63e830c6652a033ca6ad92a63894ee4589fc28..7a090a60a803b80ff328c250c251d8804fe31ed5 100644 (file)
@@ -156,20 +156,22 @@ struct ThreadPool {
         queue_.resume();
     }
 
-    /// @brief return the state of the queue
+    /// @brief return the enable state of the queue
     ///
-    /// Returns the state of the queue
+    /// The 'enabled' state corresponds to true value
+    /// The 'disabled' state corresponds to false value
     ///
-    /// @return the state
+    /// @return the enable state of the queue
     bool enabled() {
         return (queue_.enabled());
     }
 
-    /// @brief return the state of the threads
+    /// @brief return the pause state of the queue
     ///
-    /// Returns the state of the threads
+    /// The 'paused' state corresponds to true value
+    /// The 'resumed' state corresponds to false value
     ///
-    /// @return the state
+    /// @return the pause state of the queue
     bool paused() {
         return (queue_.paused());
     }
@@ -366,6 +368,8 @@ private:
         /// If the queue is 'enabled', this function returns the first element in
         /// the queue or blocks the calling thread if there are no work items
         /// available.
+        /// If the queue is 'paused', this function blocks the calling thread until
+        /// the queue is 'resumed'.
         /// Before a work item is returned statistics are updated.
         ///
         /// @return the first work item from the queue or an empty element.
@@ -505,20 +509,22 @@ private:
             cv_.notify_all();
         }
 
-        /// @brief return the state of the queue
+        /// @brief return the enable state of the queue
         ///
-        /// Returns the state of the queue
+        /// The 'enabled' state corresponds to true value
+        /// The 'disabled' state corresponds to false value
         ///
-        /// @return the state
+        /// @return the enable state of the queue
         bool enabled() {
             return (enabled_);
         }
 
-        /// @brief return the state of the threads
+        /// @brief return the pause state of the queue
         ///
-        /// Returns the state of the threads
+        /// The 'paused' state corresponds to true value
+        /// The 'resumed' state corresponds to false value
         ///
-        /// @return the state
+        /// @return the pause state of the queue
         bool paused() {
             return (paused_);
         }
@@ -539,7 +545,7 @@ private:
         /// @brief condition variable used to wait for all threads to be paused
         std::condition_variable wait_threads_cv_;
 
-        /// @brief the state of the queue
+        /// @brief the enable state of the queue
         /// The 'enabled' state corresponds to true value
         /// The 'disabled' state corresponds to false value
         std::atomic<bool> enabled_;