15TEST(recurrent_shared_future, use_case) {
16 using namespace carla;
22 constexpr size_t number_of_threads = 12u;
23 constexpr size_t number_of_openings = 40u;
25 std::atomic_size_t count{0u};
27 std::atomic_bool done{
false};
32 auto result = future.
WaitFor(1s);
34 ASSERT_TRUE(result.has_value());
36 ASSERT_EQ(*result, 42);
42 std::this_thread::sleep_for(100ms);
44 for (
auto i = 0u; i < number_of_openings - 1u; ++i) {
47 std::this_thread::sleep_for(10ms);
56 ASSERT_EQ(count, number_of_openings * number_of_threads);