Skip to content

Commit 3e4b5cd

Browse files
committed
Timing adjustments of Mutex.return_last_failed test
AppleClang manages to lock when the thread waiting should have woken up and timed out. TODO: Take slow context switching out of the equation in tests. Signed-off-by: Ted Lyngmo <[email protected]>
1 parent f0a8edb commit 3e4b5cd

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

tests/beman/timed_lock_alg/mutex.test.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,15 +78,15 @@ TEST(Mutex, return_last_failed) {
7878
auto th = JThread([&] {
7979
std::lock(mtxs[0], mtxs[1]);
8080
std::this_thread::sleep_for(10ms);
81-
mtxs[0].unlock(); // 5ms after try_lock_for started, 15ms left
81+
mtxs[0].unlock(); // 5ms after try_lock_for started, 10ms left
8282

8383
// try_lock_for here hangs on mtxs[1] and should return 1:
8484
std::this_thread::sleep_for(20ms);
8585
mtxs[1].unlock();
8686
});
8787

8888
std::this_thread::sleep_for(5ms);
89-
EXPECT_EQ(1, std::apply([](auto&... mts) { return tla::try_lock_for(20ms, mts...); }, mtxs));
89+
EXPECT_EQ(1, std::apply([](auto&... mts) { return tla::try_lock_for(15ms, mts...); }, mtxs));
9090
}
9191

9292
TEST(Mutex, succeed_with_three_in_tricky_sequence) {

0 commit comments

Comments
 (0)