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 | 11a24635da4c4f39428b182c49a7bc35e47c9534 (patch) | |
tree | 1a2c5ffcf89eb53ecd79dbc9bc0a195c27404d0c /library/cpp/threading/future/wait | |
parent | 317da38588b7898a99fd9168571408123350012b (diff) | |
download | ydb-11a24635da4c4f39428b182c49a7bc35e47c9534.tar.gz |
Restoring authorship annotation for <swarmer@yandex-team.ru>. Commit 2 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 a6f9c55a6d7..2753d5446cc 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 d7197199788..a173833a7f9 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 f69924a3d64..6ff7d57baac 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); |