From 7beee001a4e416ae47da04c4a194d1bcc939c9d7 Mon Sep 17 00:00:00 2001 From: Andrii Grynenko Date: Mon, 14 Nov 2016 18:07:46 -0800 Subject: [PATCH] Make Observer stress test pass a stress run Reviewed By: yfeldblum Differential Revision: D4179908 fbshipit-source-id: 493b302cd7e9f7ebc851599b2ca5988af817387d --- folly/experimental/observer/test/ObserverTest.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/folly/experimental/observer/test/ObserverTest.cpp b/folly/experimental/observer/test/ObserverTest.cpp index edb6c11d..5605f6ab 100644 --- a/folly/experimental/observer/test/ObserverTest.cpp +++ b/folly/experimental/observer/test/ObserverTest.cpp @@ -209,17 +209,17 @@ TEST(Observer, Cycle) { TEST(Observer, Stress) { SimpleObservable observable(0); - folly::Synchronized> values; + auto values = std::make_shared>>(); - auto observer = makeObserver([ child = observable.getObserver(), &values ]() { + auto observer = makeObserver([ child = observable.getObserver(), values ]() { auto value = **child * 10; - values.withWLock( + values->withWLock( [&](std::vector& values) { values.push_back(value); }); return value; }); EXPECT_EQ(0, **observer); - values.withRLock([](const std::vector& values) { + values->withRLock([](const std::vector& values) { EXPECT_EQ(1, values.size()); EXPECT_EQ(0, values.back()); }); @@ -234,7 +234,7 @@ TEST(Observer, Stress) { std::this_thread::yield(); } - values.withRLock([numIters = numIters](const std::vector& values) { + values->withRLock([numIters = numIters](const std::vector& values) { EXPECT_EQ(numIters * 10, values.back()); EXPECT_LT(values.size(), numIters / 2); -- 2.34.1