(wangle) ManualExecutor::waitFor(F&&)
authorHans Fugal <fugalh@fb.com>
Fri, 9 May 2014 22:00:48 +0000 (15:00 -0700)
committerDave Watson <davejwatson@fb.com>
Tue, 20 May 2014 19:53:58 +0000 (12:53 -0700)
Summary:
@override-unit-failures

Test Plan: Using it in D1322350

Reviewed By: hannesr@fb.com

FB internal diff: D1322475

folly/wangle/ManualExecutor.h

index 93c2591aa1b7cc0330d6f5ebe4c40f08d082d1ec..14c455faf0078be2b22f11d17e8be8cba810fb5d 100644 (file)
@@ -42,6 +42,11 @@ namespace folly { namespace wangle {
       run();
     }
 
+    template <class F> void waitFor(F const& f) {
+      while (!f.isReady())
+        makeProgress();
+    }
+
    private:
     std::mutex lock_;
     std::queue<std::function<void()>> runnables_;