Austin Beer
847dcbf237
Removed unnecessary explicit qualifiers.
2017-09-29 15:28:04 -06:00
Austin Beer
35d25851ce
* Reverted some of my Windows updates to get a condition variable test on Windows to pass again. Further analysis is needed to determine why the updates didn't work.
...
* Increased the range of one test so it passes on Windows.
2017-09-29 14:52:42 -06:00
Austin Beer
5ffca91e60
* Hopefully fixed the build failure on Mac OS.
...
* Refactored to use timespec as the internal storage with pthread and intmax_t with Windows.
2017-09-29 10:22:01 -06:00
Austin Beer
51e6e654e3
Re-disabled the three move_ctor_upgrade_lock tests on Windows that are still failing.
2017-09-29 02:17:58 -06:00
Vicente J. Botet Escriba
71bc9c855d
comment dependencies to threadapi feature on test/Jamfile to show that there is no impact.
2017-09-29 08:43:30 +02:00
Vicente J. Botet Escriba
f3492f8da0
Add runs for msvc-9.0, msvc-10.0 and msvc-11.0.
2017-09-29 08:41:25 +02:00
Austin Beer
3c25ad09ce
Attempting to fix build errors on Windows.
2017-09-29 00:34:47 -06:00
Austin Beer
a2e037bb54
Fixes and Cleanup
...
- Fixed build failures on Windows. The timespec struct is not supported by older versions of Visual Studio. I changed the internal representation inside of the *_timespec_timepoint classes to a boost::intmax_t representing the number of nanoseconds since the epoch.
- Fixed some functions that wouldn't execute at all if they were provided a negative time duration or an absolute time that was in the past. From what I understand, they should instead execute once and then return immediately.
- Moved pthread/timespec.hpp to detail/timespec.hpp.
- Deleted detail/internal_clock.hpp and moved the seven relevant lines into detail/timespec.hpp. This keeps all of the internal clock declarations in one place.
- Renamed thread_detail::internal_clock_t to detail::internal_chrono_clock to be consistent with and yet clearly differentiated from detail::internal_timespec_clock.
- Removed "using namespace chrono" to eliminate ambiguious namespace resolution when referencing detail::internal_chrono_clock.
- Re-enabled a few tests on Windows that had previously been disabled. I want to see whether or not they still need to be disabled.
2017-09-28 22:27:37 -06:00
Vicente J. Botet Escriba
a4a21b1c12
Merge pull request #166 from austin-beer/feature/timespec_clocks_pr11
...
Switching the Windows condition_variable and interruptible_wait functions over to using internal_timespec_clock.
2017-09-29 01:56:58 +02:00
Vicente J. Botet Escriba
e9ce83b399
Merge pull request #160 from karzhenkov/fix-threadapi-detection
...
Auto-detection of <threadapi> based on <target-os>
2017-09-28 23:50:38 +02:00
Austin Beer
c2b207faa4
Switching the Windows condition_variable and interruptible_wait functions over to using internal_timespec_clock.
2017-09-28 13:24:21 -06:00
Alexander Karzhenkov
c3a007e88b
<threadapi> feature definition moved to module "threadapi.jam"
2017-09-28 20:18:43 +05:00
Vicente J. Botet Escriba
68abb96818
Merge pull request #165 from austin-beer/feature/timespec_clocks_pr10
...
Added support for getting time on Windows to the timespec classes.
2017-09-28 08:17:23 +02:00
Austin Beer
29c3b48da0
Switching over to using the existing GetTickCount64() code for reporting monotonic time on Windows. This code is less precise than QueryPerformanceCounter(), but it's more reliable on older versions of Windows (e.g. XP and Server 2003).
2017-09-27 15:40:50 -06:00
Alexander Karzhenkov
9c1c372067
<threadapi> is now optional; detection rules moved to "threadapi.jam"
2017-09-28 01:25:17 +05:00
Austin Beer
13713f3b9c
Added support for getting time on Windows to the timespec classes.
2017-09-27 10:52:53 -06:00
Vicente J. Botet Escriba
776d42f6cb
Merge branch 'develop' into feature/timespec_clocks
2017-09-26 08:01:28 +02:00
Vicente J. Botet Escriba
b20ea9ebb1
fix strike characted.
2017-09-26 08:00:44 +02:00
Vicente J. Botet Escriba
46c1ae6f96
Merge branch 'develop' into feature/timespec_clocks
2017-09-26 05:55:40 +02:00
Vicente J. Botet Escriba
f02f23eff5
Add STACK_SIZE_PARAM_IS_A_RESERVATION when setting the stack size.
2017-09-26 05:54:53 +02:00
Vicente J. Botet Escriba
fb0317ec7d
Merge pull request #164 from austin-beer/feature/timespec_clocks_pr8
...
Fixed compile issue on Windows
2017-09-25 19:25:38 +02:00
Austin Beer
417a2d8a46
Fixed compile issue on Windows.
2017-09-25 11:15:09 -06:00
Vicente J. Botet Escriba
ce7f2b09cc
try to use again pthread/shared_mutex.hpp on windows. Comment not used functions in timespec.
2017-09-25 12:52:25 +02:00
Vicente J. Botet Escriba
e6226a95ba
try to fix future wait on posix duration.
2017-09-25 08:39:45 +02:00
Vicente J. Botet Escriba
aa221d02b5
try to fix issues on linu-mono mutex operation on system_time.
2017-09-25 00:18:12 +02:00
Vicente J. Botet Escriba
5a7d8eca6f
Merge pull request #163 from DanielaE/feature/qoi-warning
...
fix or silence (msvc) compiler warnings about constant conditional ex…
2017-09-24 21:04:34 +02:00
Vicente J. Botet Escriba
de4ee72554
disable some failing unique_lock/upgrade_lock tests on windows.
2017-09-24 20:21:43 +02:00
Vicente J. Botet Escriba
ad5ea75ddd
disable tsome failing unique_lock/upgrade_lock tests on windows.
2017-09-24 19:38:34 +02:00
Vicente J. Botet Escriba
dd1b5282b2
try to fix issues with windows and shared_mutex.
2017-09-24 17:29:27 +02:00
Vicente J. Botet Escriba
45321f0570
try to fix issues with new pthread/shared_mutex.hpp on windows by disabling the use of the pthread version that now depends on timespec.
2017-09-24 16:31:42 +02:00
Daniela Engert
4e83359537
fix or silence (msvc) compiler warnings about constant conditional expressions, unused parameters, narrowing, unreachable code, use of 'this' in base member initializations, and some other minor stuff
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2017-09-24 14:02:17 +02:00
Vicente J. Botet Escriba
961a0689f3
Merge branch 'develop'
2017-09-24 08:13:12 +02:00
Vicente J. Botet Escriba
bafc9f43a5
try to fix DateTime time related issues on pthread/shared_mutex.hpp.
2017-09-24 08:12:02 +02:00
Alexander Karzhenkov
ab3da91e67
Auto-detection logic for <threadapi> added to "test/Jamfile.v2"
2017-09-23 21:52:48 +05:00
Alexander Karzhenkov
6ee1c88869
Try fix regression for native_handle
2017-09-23 15:24:53 +05:00
Vicente J. Botet Escriba
b98d022d40
try to fix DatTime related functions for mutex/recursive_mutex.
2017-09-23 08:42:02 +02:00
Vicente J. Botet Escriba
f2d6d99d54
Merge pull request #161 from austin-beer/feature/timespec_clocks_pr7
...
Finished fixing the condition_variable[_any] timed_wait() functions.
2017-09-23 07:00:11 +02:00
Austin Beer
aeb54ddbe5
Finished fixing the condition_variable[_any] timed_wait() functions.
2017-09-22 14:22:06 -06:00
Alexander Karzhenkov
2fb41edf1a
Default <threadapi> is based on <target-os> instead of host system name
...
* <threadapi> has an additional value "native" which is the default.
If build request doesn't specify other value, it is replaced
either with "pthread" or "win32" depending on <target-os>.
* <tag> modifies name of generated library only if resulting <threadapi>
value differs from one that would have been chosen to replace "native"
according to <target-os>.
2017-09-22 10:51:07 +05:00
Vicente J. Botet Escriba
4d385bedd3
try to fix condition_variable::timed_wait for pthread.
2017-09-22 04:18:55 +02:00
Vicente J. Botet Escriba
03a2ea4612
Merge pull request #159 from austin-beer/feature/timespec_clocks_pr6
...
Fixed try_join_* and timed_join functions that were failing time jump tests
2017-09-22 00:37:20 +02:00
Austin Beer
c290fc5f98
Deleted an unused function and added some fixme comments.
2017-09-21 12:59:09 -06:00
Austin Beer
23861b9608
Fixed try_lock_*for() and wait_for() functions that were failing time jump tests.
2017-09-21 12:08:20 -06:00
Austin Beer
24fd5953c9
Fixed timed_join on Windows when the system clock jumps.
2017-09-21 11:27:36 -06:00
Austin Beer
8f51d9c4a7
Fixed try_join_* and timed_join functions that were failing time jump tests
2017-09-21 10:56:53 -06:00
Vicente J. Botet Escriba
5dcc5f6d26
Merge branch 'develop' into feature/timespec_clocks
2017-09-21 18:53:52 +02:00
Vicente J. Botet Escriba
70a4ce8eb3
Merge pull request #158 from austin-beer/feature/timespec_clocks_pr5
...
Timespec Improvements, Minor Cleanup
2017-09-21 18:50:42 +02:00
Austin Beer
8207b88e97
Made function static
2017-09-21 10:48:58 -06:00
Austin Beer
de7e354a8e
Improved the timespec implementation
...
* Added a constructor to timespec_duration, real_timespec_timepoint, and mono_timespec_timepoint that takes an intmax_t representing the number of nanoseconds in the timespec.
* Added a getNs() function to timespec_duration, real_timespec_timepoint, and mono_timespec_timepoint that returns an intmax_t representing the number of nanoseconds in the timespec.
* Added a timespec_milliseconds() function that takes an integer representing milliseconds and returns a timespec_duration.
* Removed some unnecessary BOOST_SYMBOL_VISIBLE declarations.
* Removed the unnecessary d100 variable declarations.
2017-09-21 09:28:18 -06:00
Vicente J. Botet Escriba
981e993d40
Adjust time constraint to windows.
2017-09-21 08:02:22 +02:00