Remove unused Condition class.
GitOrigin-RevId: d82bd14425f46cd8b3ddde8ca50db15ed07ff9c9
This commit is contained in:
parent
f7caca6023
commit
992e1144ca
@ -19,7 +19,6 @@ set(TDACTOR_SOURCE
|
||||
td/actor/impl/Event.h
|
||||
td/actor/impl/Scheduler-decl.h
|
||||
td/actor/impl/Scheduler.h
|
||||
td/actor/Condition.h
|
||||
td/actor/MultiPromise.h
|
||||
td/actor/PromiseFuture.h
|
||||
td/actor/SchedulerLocalStorage.h
|
||||
|
@ -1,50 +0,0 @@
|
||||
//
|
||||
// Copyright Aliaksei Levin (levlam@telegram.org), Arseny Smirnov (arseny30@gmail.com) 2014-2020
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
//
|
||||
#pragma once
|
||||
|
||||
#include "td/actor/actor.h"
|
||||
#include "td/actor/PromiseFuture.h"
|
||||
|
||||
#include "td/utils/common.h"
|
||||
|
||||
namespace td {
|
||||
|
||||
class Condition {
|
||||
class Helper : public Actor {
|
||||
public:
|
||||
void wait(Promise<> promise) {
|
||||
pending_promises_.push_back(std::move(promise));
|
||||
}
|
||||
|
||||
private:
|
||||
std::vector<Promise<>> pending_promises_;
|
||||
void tear_down() override {
|
||||
for (auto &promise : pending_promises_) {
|
||||
promise.set_value(Unit());
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
public:
|
||||
Condition() {
|
||||
own_actor_ = create_actor<Helper>("helper");
|
||||
actor_ = own_actor_.get();
|
||||
}
|
||||
void wait(Promise<> promise) {
|
||||
send_closure(actor_, &Helper::wait, std::move(promise));
|
||||
}
|
||||
void set_true() {
|
||||
CHECK(!own_actor_.empty());
|
||||
own_actor_.reset();
|
||||
}
|
||||
|
||||
private:
|
||||
ActorId<Helper> actor_;
|
||||
ActorOwn<Helper> own_actor_;
|
||||
};
|
||||
|
||||
} // namespace td
|
Loading…
Reference in New Issue
Block a user