X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=folly%2Ffutures%2FManualExecutor.cpp;h=5586afba7953b53b3a21756650d8d2df29e5515b;hb=4cf30a1441af267ee42ab2fc9976dc3332f36ed8;hp=9b5c87f23944c206219cb8a8cc1a9662bc0f45e3;hpb=c44bb6203a6c72aaa9ce93d736c3405b4ffef761;p=folly.git diff --git a/folly/futures/ManualExecutor.cpp b/folly/futures/ManualExecutor.cpp index 9b5c87f2..5586afba 100644 --- a/folly/futures/ManualExecutor.cpp +++ b/folly/futures/ManualExecutor.cpp @@ -26,7 +26,7 @@ namespace folly { void ManualExecutor::add(Func callback) { std::lock_guard lock(lock_); - funcs_.push(std::move(callback)); + funcs_.emplace(std::move(callback)); sem_.post(); } @@ -42,7 +42,7 @@ size_t ManualExecutor::run() { auto& sf = scheduledFuncs_.top(); if (sf.time > now_) break; - funcs_.push(sf.func); + funcs_.emplace(sf.moveOutFunc()); scheduledFuncs_.pop(); }