From 8e9b2f8bbf4a2320f539eef5b85555f42c065425 Mon Sep 17 00:00:00 2001 From: pechatnov Date: Thu, 10 Feb 2022 16:48:57 +0300 Subject: Restoring authorship annotation for . Commit 1 of 2. --- library/cpp/threading/future/core/future-inl.h | 76 +++++++++++++------------- library/cpp/threading/future/core/future.h | 8 +-- library/cpp/threading/future/future_ut.cpp | 24 ++++---- 3 files changed, 54 insertions(+), 54 deletions(-) (limited to 'library/cpp/threading/future') diff --git a/library/cpp/threading/future/core/future-inl.h b/library/cpp/threading/future/core/future-inl.h index 5fd4296a93c..d9bd32a21ee 100644 --- a/library/cpp/threading/future/core/future-inl.h +++ b/library/cpp/threading/future/core/future-inl.h @@ -127,21 +127,21 @@ namespace NThreading { template void SetValue(TT&& value) { - bool success = TrySetValue(std::forward(value)); - if (Y_UNLIKELY(!success)) { - ythrow TFutureException() << "value already set"; - } - } - - template - bool TrySetValue(TT&& value) { + bool success = TrySetValue(std::forward(value)); + if (Y_UNLIKELY(!success)) { + ythrow TFutureException() << "value already set"; + } + } + + template + bool TrySetValue(TT&& value) { TSystemEvent* readyEvent = nullptr; TCallbackList callbacks; with_lock (StateLock) { int state = AtomicGet(State); if (Y_UNLIKELY(state != NotReady)) { - return false; + return false; } new (&Value) T(std::forward(value)); @@ -162,8 +162,8 @@ namespace NThreading { callback(temp); } } - - return true; + + return true; } void SetException(std::exception_ptr e) { @@ -316,20 +316,20 @@ namespace NThreading { } void SetValue() { - bool success = TrySetValue(); - if (Y_UNLIKELY(!success)) { - ythrow TFutureException() << "value already set"; - } - } - - bool TrySetValue() { + bool success = TrySetValue(); + if (Y_UNLIKELY(!success)) { + ythrow TFutureException() << "value already set"; + } + } + + bool TrySetValue() { TSystemEvent* readyEvent = nullptr; TCallbackList callbacks; with_lock (StateLock) { int state = AtomicGet(State); if (Y_UNLIKELY(state != NotReady)) { - return false; + return false; } readyEvent = ReadyEvent.Get(); @@ -348,8 +348,8 @@ namespace NThreading { callback(temp); } } - - return true; + + return true; } void SetException(std::exception_ptr e) { @@ -798,18 +798,18 @@ namespace NThreading { } template - inline bool TPromise::TrySetValue(const T& value) { - EnsureInitialized(); - return State->TrySetValue(value); - } - - template - inline bool TPromise::TrySetValue(T&& value) { - EnsureInitialized(); - return State->TrySetValue(std::move(value)); - } - - template + inline bool TPromise::TrySetValue(const T& value) { + EnsureInitialized(); + return State->TrySetValue(value); + } + + template + inline bool TPromise::TrySetValue(T&& value) { + EnsureInitialized(); + return State->TrySetValue(std::move(value)); + } + + template inline void TPromise::TryRethrow() const { if (State) { State->TryRethrow(); @@ -887,11 +887,11 @@ namespace NThreading { State->SetValue(); } - inline bool TPromise::TrySetValue() { - EnsureInitialized(); - return State->TrySetValue(); - } - + inline bool TPromise::TrySetValue() { + EnsureInitialized(); + return State->TrySetValue(); + } + inline void TPromise::TryRethrow() const { if(State) { State->TryRethrow(); diff --git a/library/cpp/threading/future/core/future.h b/library/cpp/threading/future/core/future.h index 2e82bb953eb..b42a83a4ca6 100644 --- a/library/cpp/threading/future/core/future.h +++ b/library/cpp/threading/future/core/future.h @@ -209,9 +209,9 @@ namespace NThreading { void SetValue(const T& value); void SetValue(T&& value); - bool TrySetValue(const T& value); - bool TrySetValue(T&& value); - + bool TrySetValue(const T& value); + bool TrySetValue(T&& value); + void TryRethrow() const; bool HasException() const; void SetException(const TString& e); @@ -250,7 +250,7 @@ namespace NThreading { void GetValue() const; void SetValue(); - bool TrySetValue(); + bool TrySetValue(); void TryRethrow() const; bool HasException() const; diff --git a/library/cpp/threading/future/future_ut.cpp b/library/cpp/threading/future/future_ut.cpp index 05950a568d4..99c9e33eca5 100644 --- a/library/cpp/threading/future/future_ut.cpp +++ b/library/cpp/threading/future/future_ut.cpp @@ -479,7 +479,7 @@ namespace { UNIT_ASSERT_EQUAL(promise.ExtractValue(), 123); UNIT_CHECK_GENERATED_EXCEPTION(promise.ExtractValue(), TFutureException); } - + Y_UNIT_TEST(ShouldNotExtractFromSharedDefault) { UNIT_CHECK_GENERATED_EXCEPTION(MakeFuture().ExtractValue(), TFutureException); @@ -495,17 +495,17 @@ namespace { UNIT_ASSERT_VALUES_EQUAL(MakeFuture().GetValue().String, TString(100, 'a')); } - Y_UNIT_TEST(HandlingRepetitiveSet) { - TPromise promise = NewPromise(); - promise.SetValue(42); - UNIT_CHECK_GENERATED_EXCEPTION(promise.SetValue(42), TFutureException); - } - - Y_UNIT_TEST(HandlingRepetitiveTrySet) { - TPromise promise = NewPromise(); - UNIT_ASSERT(promise.TrySetValue(42)); - UNIT_ASSERT(!promise.TrySetValue(42)); - } + Y_UNIT_TEST(HandlingRepetitiveSet) { + TPromise promise = NewPromise(); + promise.SetValue(42); + UNIT_CHECK_GENERATED_EXCEPTION(promise.SetValue(42), TFutureException); + } + + Y_UNIT_TEST(HandlingRepetitiveTrySet) { + TPromise promise = NewPromise(); + UNIT_ASSERT(promise.TrySetValue(42)); + UNIT_ASSERT(!promise.TrySetValue(42)); + } Y_UNIT_TEST(HandlingRepetitiveSetException) { TPromise promise = NewPromise(); -- cgit v1.3