summaryrefslogtreecommitdiff
path: root/absl/synchronization/internal/waiter_test.cc
Commit message (Collapse)AuthorAge
* Fix flaky test failures.Gravatar Evan Brown2023-04-20
| | | | | PiperOrigin-RevId: 525808747 Change-Id: I01aeef6b8558673bf1fc38a948dcecf00300b641
* Don't override clock_gettime in the KernelTimeout and WaiterGravatar Derek Mauro2023-04-13
| | | | | | | tests under sanitizers. The overrides break the sanitizers. PiperOrigin-RevId: 524037272 Change-Id: I85b87d3870c488cb316505e94b394c6f98e9f60f
* Synchronization: Consolidate the logic for whether steady clocks are supportedGravatar Derek Mauro2023-04-12
| | | | | | | for relative timeouts PiperOrigin-RevId: 523789416 Change-Id: Ide4cfdcae9ea7bffca3355c80ea9c8833a9536e6
* Fix flakiness issues in timing tests.Gravatar Evan Brown2023-03-27
| | | | | PiperOrigin-RevId: 519939158 Change-Id: I9b049fa55167ed4064f3909887eec7bc52601677
* Add an implementation of Waiter that uses std::mutex/std::condition_variableGravatar Derek Mauro2023-03-21
| | | | | | | | | | | | | | | This implementation may at some point become the default on some platforms. Currently not all platforms have widespread support for both real absolute timeouts or real relative timeouts (here "real" means without converting to the other timeout type which is the only one supported by the underlying APIs). In this case we can defer to their standard library to implement correct support. This is not currently the default on any platform Note: The size of WaiterState had to increase to fit the new implementation PiperOrigin-RevId: 518266646 Change-Id: I7f246646a960d6e1b155f9de0bf2f681c5d3d245
* Synchronization: Refactor Waiter to allow us to write testsGravatar Derek Mauro2023-03-20
Instead of being only able to test the platform Waiter implementation, this allows us to be able to test all Waiter implementations that build on a specific platform. A unittest is added that tests all implementations that work for the platform, and allows us to check that the expected one is being used by printing the name of the selected implementation. PiperOrigin-RevId: 518072415 Change-Id: Ie9e6fcd9d8283b4038e6f4e68a304d2adcc04b19