]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
common/Finisher: add queue(list<Context*>&)
authorSamuel Just <sam.just@inktank.com>
Tue, 20 May 2014 23:05:01 +0000 (16:05 -0700)
committerSamuel Just <sam.just@inktank.com>
Tue, 20 May 2014 23:08:24 +0000 (16:08 -0700)
Signed-off-by: Samuel Just <sam.just@inktank.com>
src/common/Finisher.h

index 173b924d7adcb2800c1b0ea508d80d6784de53f3..610470eb4e1268739d65ad8129636d4f3cea3000 100644 (file)
@@ -77,6 +77,15 @@ class Finisher {
     if (logger)
       logger->inc(l_finisher_queue_len);
   }
+  void queue(list<Context*>& ls) {
+    finisher_lock.Lock();
+    finisher_queue.insert(finisher_queue.end(), ls.begin(), ls.end());
+    finisher_cond.Signal();
+    finisher_lock.Unlock();
+    ls.clear();
+    if (logger)
+      logger->inc(l_finisher_queue_len);
+  }
   
   void start();
   void stop();