boostorg / thread

Boost.org thread module
http://boost.org/libs/thread
200 stars 161 forks source link

Finished fixing the condition_variable[_any] timed_wait() functions. #161

Closed austin-beer closed 6 years ago

austin-beer commented 6 years ago

I know I said I wasn't going to submit any more PRs for awhile, but I just couldn't help myself. :)

I updated the tests to include future and sharedfuture, per your request. I also added tests for the trylock_*() functions that shared_mutex provides that the other mutex's don't. And since upgrade_mutex is just a typedef of shared_mutex, I removed the tests for upgrade_mutex.

test_boost_sleep.cpp.txt Makefile.linux.txt Makefile.windows.txt

Latest results from the develop branch (for comparison to see how far we've come): linux_results_orig_no_monotonic.txt linux_results_orig_yes_monotonic.txt windows_results_orig_no_monotonic.txt

Latest results from the timespec_clocks branch: linux_results_fixed_no_monotonic.txt linux_results_fixed_yes_monotonic.txt windows_results_fixed_no_monotonic.txt

Results with these PR changes: linux_results_austin_no_monotonic.txt linux_results_austin_yes_monotonic.txt windows_results_austin_no_monotonic.txt

viboes commented 6 years ago

Thanks for this unexpected contribution ;-) and for adding more test. I'll try to fix the remaining DataTime related issues.