| 79 | |
| 80 | Y_UNIT_TEST_SUITE(EventTest) { |
| 81 | Y_UNIT_TEST(WaitAndSignalTest) { |
| 82 | TSharedData data; |
| 83 | TThreadPool queue; |
| 84 | queue.Start(5); |
| 85 | for (size_t i = 0; i < 5; ++i) { |
| 86 | UNIT_ASSERT(queue.Add(new TThreadTask(data, i))); |
| 87 | } |
| 88 | queue.Stop(); |
| 89 | UNIT_ASSERT(data.Counter.load() == 10); |
| 90 | UNIT_ASSERT(!data.failed); |
| 91 | } |
| 92 | |
| 93 | Y_UNIT_TEST(ConcurrentSignalAndWaitTest) { |
| 94 | // test for problem detected by thread-sanitizer (signal/wait race) SEARCH-2113 |