diff options
author | swarmer <swarmer@yandex-team.ru> | 2022-02-10 16:46:31 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:46:31 +0300 |
commit | 317da38588b7898a99fd9168571408123350012b (patch) | |
tree | 25eebc31526019ad39a6c1b13f492963d97ba439 /library/cpp/threading/future/wait | |
parent | 3b2241461d41d41ba1a706b0750c4f0f55c344f6 (diff) | |
download | ydb-317da38588b7898a99fd9168571408123350012b.tar.gz |
Restoring authorship annotation for <swarmer@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'library/cpp/threading/future/wait')
-rw-r--r-- | library/cpp/threading/future/wait/wait-inl.h | 10 | ||||
-rw-r--r-- | library/cpp/threading/future/wait/wait.cpp | 24 | ||||
-rw-r--r-- | library/cpp/threading/future/wait/wait.h | 16 |
3 files changed, 25 insertions, 25 deletions
diff --git a/library/cpp/threading/future/wait/wait-inl.h b/library/cpp/threading/future/wait/wait-inl.h index 2753d5446cc..a6f9c55a6d7 100644 --- a/library/cpp/threading/future/wait/wait-inl.h +++ b/library/cpp/threading/future/wait/wait-inl.h @@ -13,17 +13,17 @@ namespace NThreading { for (const auto& future: futures) { voidFutures.push_back(future.IgnoreResult()); - } - + } + return voidFutures; } } - template <typename TContainer> + template <typename TContainer> [[nodiscard]] NImpl::EnableGenericWait<TContainer> WaitAll(const TContainer& futures) { return WaitAll(NImpl::ToVoidFutures(futures)); - } - + } + template <typename TContainer> [[nodiscard]] NImpl::EnableGenericWait<TContainer> WaitExceptionOrAll(const TContainer& futures) { return WaitExceptionOrAll(NImpl::ToVoidFutures(futures)); diff --git a/library/cpp/threading/future/wait/wait.cpp b/library/cpp/threading/future/wait/wait.cpp index a173833a7f9..d7197199788 100644 --- a/library/cpp/threading/future/wait/wait.cpp +++ b/library/cpp/threading/future/wait/wait.cpp @@ -23,11 +23,11 @@ namespace NThreading { TFuture<void> WaitGeneric(TArrayRef<const TFuture<void>> futures) { if (futures.empty()) { return MakeFuture(); - } + } if (futures.size() == 1) { return futures.front(); - } - + } + TWaitGroup<WaitPolicy> wg; for (const auto& fut : futures) { wg.Add(fut); @@ -41,19 +41,19 @@ namespace NThreading { TFuture<void> WaitAll(const TFuture<void>& f1) { return WaitGeneric<TWaitPolicy::TAll>(f1); - } - + } + TFuture<void> WaitAll(const TFuture<void>& f1, const TFuture<void>& f2) { return WaitGeneric<TWaitPolicy::TAll>(f1, f2); - } - + } + TFuture<void> WaitAll(TArrayRef<const TFuture<void>> futures) { return WaitGeneric<TWaitPolicy::TAll>(futures); - } - - - //////////////////////////////////////////////////////////////////////////////// - + } + + + //////////////////////////////////////////////////////////////////////////////// + TFuture<void> WaitExceptionOrAll(const TFuture<void>& f1) { return WaitGeneric<TWaitPolicy::TExceptionOrAll>(f1); } diff --git a/library/cpp/threading/future/wait/wait.h b/library/cpp/threading/future/wait/wait.h index 6ff7d57baac..f69924a3d64 100644 --- a/library/cpp/threading/future/wait/wait.h +++ b/library/cpp/threading/future/wait/wait.h @@ -14,16 +14,16 @@ namespace NThreading { !std::is_convertible_v<TContainer, TArrayRef<const TFuture<void>>>, TFuture<void>>; } - // waits for all futures - [[nodiscard]] TFuture<void> WaitAll(const TFuture<void>& f1); - [[nodiscard]] TFuture<void> WaitAll(const TFuture<void>& f1, const TFuture<void>& f2); + // waits for all futures + [[nodiscard]] TFuture<void> WaitAll(const TFuture<void>& f1); + [[nodiscard]] TFuture<void> WaitAll(const TFuture<void>& f1, const TFuture<void>& f2); [[nodiscard]] TFuture<void> WaitAll(TArrayRef<const TFuture<void>> futures); - template <typename TContainer> + template <typename TContainer> [[nodiscard]] NImpl::EnableGenericWait<TContainer> WaitAll(const TContainer& futures); - - // waits for the first exception or for all futures - [[nodiscard]] TFuture<void> WaitExceptionOrAll(const TFuture<void>& f1); - [[nodiscard]] TFuture<void> WaitExceptionOrAll(const TFuture<void>& f1, const TFuture<void>& f2); + + // waits for the first exception or for all futures + [[nodiscard]] TFuture<void> WaitExceptionOrAll(const TFuture<void>& f1); + [[nodiscard]] TFuture<void> WaitExceptionOrAll(const TFuture<void>& f1, const TFuture<void>& f2); [[nodiscard]] TFuture<void> WaitExceptionOrAll(TArrayRef<const TFuture<void>> futures); template <typename TContainer> [[nodiscard]] NImpl::EnableGenericWait<TContainer> WaitExceptionOrAll(const TContainer& futures); |