diff options
| author | levlam <levlam@telegram.org> | 2022-09-14 15:06:52 +0300 |
|---|---|---|
| committer | levlam <levlam@telegram.org> | 2022-09-14 15:06:52 +0300 |
| commit | 1ac2dfef30d53183ade197fdac26e05720214a39 (patch) | |
| tree | 00a09c5fe485b08dd6fdba6470c9dd4fea3be32b /tdactor | |
| parent | 70e3586626f8fe3edb878eb94b36abb1dafdf0cb (diff) | |
Replace ConcurrentScheduler::init with constructor.
Diffstat (limited to 'tdactor')
| -rw-r--r-- | tdactor/example/example.cpp | 3 | ||||
| -rw-r--r-- | tdactor/td/actor/ConcurrentScheduler.cpp | 2 | ||||
| -rw-r--r-- | tdactor/td/actor/ConcurrentScheduler.h | 2 | ||||
| -rw-r--r-- | tdactor/test/actors_bugs.cpp | 8 | ||||
| -rw-r--r-- | tdactor/test/actors_main.cpp | 15 | ||||
| -rw-r--r-- | tdactor/test/actors_simple.cpp | 30 | ||||
| -rw-r--r-- | tdactor/test/actors_workers.cpp | 3 |
7 files changed, 21 insertions, 42 deletions
diff --git a/tdactor/example/example.cpp b/tdactor/example/example.cpp index fb5ea6507..8f182d835 100644 --- a/tdactor/example/example.cpp +++ b/tdactor/example/example.cpp @@ -36,8 +36,7 @@ class MainActor final : public td::Actor { }; int main() { - td::ConcurrentScheduler scheduler; - scheduler.init(4 /*thread_count*/, 0); + td::ConcurrentScheduler scheduler(4 /*thread_count*/, 0); scheduler.start(); { auto guard = scheduler.get_main_guard(); diff --git a/tdactor/td/actor/ConcurrentScheduler.cpp b/tdactor/td/actor/ConcurrentScheduler.cpp index eb4557452..f5ffe10a2 100644 --- a/tdactor/td/actor/ConcurrentScheduler.cpp +++ b/tdactor/td/actor/ConcurrentScheduler.cpp @@ -15,7 +15,7 @@ namespace td { -void ConcurrentScheduler::init(int32 additional_thread_count, uint64 thread_affinity_mask) { +ConcurrentScheduler::ConcurrentScheduler(int32 additional_thread_count, uint64 thread_affinity_mask) { #if TD_THREAD_UNSUPPORTED || TD_EVENTFD_UNSUPPORTED additional_thread_count = 0; #endif diff --git a/tdactor/td/actor/ConcurrentScheduler.h b/tdactor/td/actor/ConcurrentScheduler.h index f833848d2..490deb218 100644 --- a/tdactor/td/actor/ConcurrentScheduler.h +++ b/tdactor/td/actor/ConcurrentScheduler.h @@ -26,7 +26,7 @@ namespace td { class ConcurrentScheduler final : private Scheduler::Callback { public: - void init(int32 additional_thread_count, uint64 thread_affinity_mask = 0); + explicit ConcurrentScheduler(int32 additional_thread_count, uint64 thread_affinity_mask = 0); void finish_async() { schedulers_[0]->finish(); diff --git a/tdactor/test/actors_bugs.cpp b/tdactor/test/actors_bugs.cpp index 9f3841430..0720f0ed6 100644 --- a/tdactor/test/actors_bugs.cpp +++ b/tdactor/test/actors_bugs.cpp @@ -14,9 +14,7 @@ #include "td/utils/tests.h" TEST(MultiTimeout, bug) { - td::ConcurrentScheduler sched; - int threads_n = 0; - sched.init(threads_n); + td::ConcurrentScheduler sched(0, 0); sched.start(); td::unique_ptr<td::MultiTimeout> multi_timeout; @@ -91,9 +89,7 @@ class TimeoutManager final : public td::Actor { td::int32 TimeoutManager::count; TEST(MultiTimeout, Destroy) { - td::ConcurrentScheduler sched; - int threads_n = 0; - sched.init(threads_n); + td::ConcurrentScheduler sched(0, 0); auto timeout_manager = sched.create_actor_unsafe<TimeoutManager>(0, "TimeoutManager"); TimeoutManager *manager = timeout_manager.get().get_actor_unsafe(); diff --git a/tdactor/test/actors_main.cpp b/tdactor/test/actors_main.cpp index 4bb9ac54b..628b74a94 100644 --- a/tdactor/test/actors_main.cpp +++ b/tdactor/test/actors_main.cpp @@ -394,9 +394,8 @@ class SendToDead final : public td::Actor { TEST(Actors, send_to_dead) { //TODO: fix CHECK(storage_count_.load() == 0) return; - td::ConcurrentScheduler sched; int threads_n = 5; - sched.init(threads_n); + td::ConcurrentScheduler sched(threads_n, 0); sched.create_actor_unsafe<SendToDead>(0, "SendToDead").release(); sched.start(); @@ -407,9 +406,8 @@ TEST(Actors, send_to_dead) { } TEST(Actors, main_simple) { - td::ConcurrentScheduler sched; int threads_n = 3; - sched.init(threads_n); + td::ConcurrentScheduler sched(threads_n, 0); sched.create_actor_unsafe<SimpleActor>(threads_n > 1 ? 1 : 0, "simple", threads_n).release(); sched.start(); @@ -420,9 +418,8 @@ TEST(Actors, main_simple) { } TEST(Actors, main) { - td::ConcurrentScheduler sched; int threads_n = 9; - sched.init(threads_n); + td::ConcurrentScheduler sched(threads_n, 0); sched.create_actor_unsafe<MainQueryActor>(threads_n > 1 ? 1 : 0, "MainQuery", threads_n).release(); sched.start(); @@ -446,9 +443,8 @@ class DoAfterStop final : public td::Actor { }; TEST(Actors, do_after_stop) { - td::ConcurrentScheduler sched; int threads_n = 0; - sched.init(threads_n); + td::ConcurrentScheduler sched(threads_n, 0); sched.create_actor_unsafe<DoAfterStop>(0, "DoAfterStop").release(); sched.start(); @@ -492,9 +488,8 @@ static void check_context() { } TEST(Actors, context_during_destruction) { - td::ConcurrentScheduler sched; int threads_n = 0; - sched.init(threads_n); + td::ConcurrentScheduler sched(threads_n, 0); { auto guard = sched.get_main_guard(); diff --git a/tdactor/test/actors_simple.cpp b/tdactor/test/actors_simple.cpp index 58f14ac48..78d32d543 100644 --- a/tdactor/test/actors_simple.cpp +++ b/tdactor/test/actors_simple.cpp @@ -256,8 +256,7 @@ TEST(Actors, simple_migrate) { sb.clear(); sb2.clear(); - td::ConcurrentScheduler scheduler; - scheduler.init(2); + td::ConcurrentScheduler scheduler(2, 0); auto pong = scheduler.create_actor_unsafe<Pong>(2, "Pong").release(); scheduler.create_actor_unsafe<Ping>(1, "Ping", pong).release(); scheduler.start(); @@ -300,8 +299,7 @@ class OpenClose final : public td::Actor { }; TEST(Actors, open_close) { - td::ConcurrentScheduler scheduler; - scheduler.init(2); + td::ConcurrentScheduler scheduler(2, 0); int cnt = 10000; // TODO(perf) optimize scheduler.create_actor_unsafe<OpenClose>(1, "A", cnt).release(); scheduler.create_actor_unsafe<OpenClose>(2, "B", cnt).release(); @@ -425,8 +423,7 @@ class LinkTokenMasterActor final : public td::Actor { }; TEST(Actors, link_token) { - td::ConcurrentScheduler scheduler; - scheduler.init(0); + td::ConcurrentScheduler scheduler(0, 0); auto cnt = 100000; scheduler.create_actor_unsafe<LinkTokenMasterActor>(0, "A", cnt).release(); scheduler.start(); @@ -485,8 +482,7 @@ class LaterMasterActor final : public td::Actor { TEST(Actors, later) { sb.clear(); - td::ConcurrentScheduler scheduler; - scheduler.init(0); + td::ConcurrentScheduler scheduler(0, 0); scheduler.create_actor_unsafe<LaterMasterActor>(0, "A").release(); scheduler.start(); while (scheduler.run_main(10)) { @@ -524,8 +520,7 @@ class MultiPromise1 final : public td::Actor { }; TEST(Actors, MultiPromise) { - td::ConcurrentScheduler scheduler; - scheduler.init(0); + td::ConcurrentScheduler scheduler(0, 0); scheduler.create_actor_unsafe<MultiPromise1>(0, "A").release(); scheduler.start(); while (scheduler.run_main(10)) { @@ -546,8 +541,7 @@ class FastPromise final : public td::Actor { }; TEST(Actors, FastPromise) { - td::ConcurrentScheduler scheduler; - scheduler.init(0); + td::ConcurrentScheduler scheduler(0, 0); scheduler.create_actor_unsafe<FastPromise>(0, "A").release(); scheduler.start(); while (scheduler.run_main(10)) { @@ -566,8 +560,7 @@ class StopInTeardown final : public td::Actor { }; TEST(Actors, stop_in_teardown) { - td::ConcurrentScheduler scheduler; - scheduler.init(0); + td::ConcurrentScheduler scheduler(0, 0); scheduler.create_actor_unsafe<StopInTeardown>(0, "A").release(); scheduler.start(); while (scheduler.run_main(10)) { @@ -601,8 +594,7 @@ class AlwaysWaitForMailbox final : public td::Actor { }; TEST(Actors, always_wait_for_mailbox) { - td::ConcurrentScheduler scheduler; - scheduler.init(0); + td::ConcurrentScheduler scheduler(0, 0); scheduler.create_actor_unsafe<AlwaysWaitForMailbox>(0, "A").release(); scheduler.start(); while (scheduler.run_main(10)) { @@ -612,8 +604,7 @@ TEST(Actors, always_wait_for_mailbox) { #if !TD_THREAD_UNSUPPORTED && !TD_EVENTFD_UNSUPPORTED TEST(Actors, send_from_other_threads) { - td::ConcurrentScheduler scheduler; - scheduler.init(1); + td::ConcurrentScheduler scheduler(1, 0); int thread_n = 10; class Listener final : public td::Actor { public: @@ -680,8 +671,7 @@ class MultiPromiseSendClosureLaterTest final : public td::Actor { }; TEST(Actors, MultiPromiseSendClosureLater) { - td::ConcurrentScheduler scheduler; - scheduler.init(0); + td::ConcurrentScheduler scheduler(0, 0); scheduler.create_actor_unsafe<MultiPromiseSendClosureLaterTest>(0, "MultiPromiseSendClosureLaterTest").release(); scheduler.start(); while (scheduler.run_main(1)) { diff --git a/tdactor/test/actors_workers.cpp b/tdactor/test/actors_workers.cpp index 748edd4e8..bac42e3fd 100644 --- a/tdactor/test/actors_workers.cpp +++ b/tdactor/test/actors_workers.cpp @@ -106,8 +106,7 @@ class Manager final : public td::Actor { }; static void test_workers(int threads_n, int workers_n, int queries_n, int query_size) { - td::ConcurrentScheduler sched; - sched.init(threads_n); + td::ConcurrentScheduler sched(threads_n, 0); td::vector<td::ActorId<PowerWorker>> workers; for (int i = 0; i < workers_n; i++) { |
