Commit Graph

1335 Commits

Author SHA1 Message Date
Vicente J. Botet Escriba
7b1b1b5daa fix include guard on serial_executor_cont.hpp. 2015-02-19 18:00:29 +01:00
Vicente J. Botet Escriba
63fb28c7d4 Merge branch 'develop' into fix/blocking_future 2015-02-19 10:36:20 +01:00
Vicente J. Botet Escriba
e715d74a95 use a different name for serial_executor continuation as it add more constraints. 2015-02-19 10:30:25 +01:00
Vicente J. Botet Escriba
a04497af24 make thread-safe serial_executor. There are yet somme synchronization limitations. 2015-02-18 10:45:10 +01:00
Vicente J. Botet Escriba
821a93ca1a first draft for serial_executor based on continuations. 2015-02-17 19:09:56 +01:00
Vicente J. Botet Escriba
e2cda49b0b cleanup. unlock before submiting to an executor as it can directly call the continuation. 2015-02-16 14:17:57 +01:00
Vicente J. Botet Escriba
a4e7eba1d4 cleanup. 2015-02-11 07:05:10 +01:00
Vicente J. Botet Escriba
67778b3278 fix shared_future::then, get and get_or. 2015-02-10 00:01:28 +01:00
Vicente J. Botet Escriba
a5e6952a95 merge from develop - coamesced timers. 2015-02-09 13:08:55 +01:00
Vicente J. Botet Escriba
d628b8d36c Merge branch 'develop' of github.com:boostorg/thread into develop 2015-02-05 08:30:39 +01:00
Vicente J. Botet Escriba
05e492c56c Merge branch 'master' of github.com:boostorg/thread 2015-02-04 22:33:22 +01:00
Vicente J. Botet Escriba
3c2321c37a Merge pull request #45 from Matulis/master
Updated namespace to call no_interruption_point sleep_for
2015-02-04 22:31:11 +01:00
Martin Matulyauskas
6c72a2527f Updated namespace to call no_interruption_point sleep_for 2015-02-04 15:00:51 -06:00
Vicente J. Botet Escriba
5960985355 merge from develop: Reverted parts of c16ec42 because 45510fa was a better fix.: 2015-02-04 18:46:29 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
84e2b7869d Merge branch 'develop' of github.com:boostorg/thread into develop 2015-02-04 13:58:30 +00:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
401f69f108 Added coalesced timer support to Windows where that API is available. Tolerable delay is set to the maximum of 5% of interval or 32 ms. 2015-02-04 13:58:11 +00:00
Vicente J. Botet Escriba
4f57e3fb61 Merge pull request #43 from vtnerd/RevertMakeReady
Reverted parts of c16ec42 because 45510fa was a better fix.
2015-02-03 08:34:53 +01:00
Vicente J. Botet Escriba
fdf20f1adc merge Allow to call shared_future::then multiple times. Related to #10972. 2015-02-02 19:40:04 +01:00
Lee Clagett
990474ff47 Reverted parts of c16ec42 because 45510fa was a better fix. 2015-02-02 12:08:38 -05:00
Vicente J. Botet Escriba
441c89d304 Allow to call shared_future::then multiple times. Related to #10972. 2015-02-02 17:41:57 +01:00
Vicente J. Botet Escriba
63098e84a2 Merge branch 'develop' into fix/blocking_future 2015-02-01 19:39:43 +01:00
Vicente J. Botet Escriba
45510facc7 unwrapped future must forward the continuation to the wrapped future. Related to #10964. 2015-02-01 14:56:52 +01:00
Vicente J. Botet Escriba
cf539064d6 Deduce T& when the make_ready_future parameter is reference_wrapper<T>. Relates to #10979. 2015-02-01 13:44:41 +01:00
Vicente J. Botet Escriba
3431736c88 Merge branch 'develop' into fix/blocking_future 2015-01-27 22:22:37 +01:00
Jürgen Hunold
c1148a66cc Fix gcc/clang shadow warnings.
The variable names are re-used in the all_futures_lock() functions.
2015-01-26 12:39:27 +01:00
Vicente J. Botet Escriba
5fa0a5d4c5 make shared_future::get() const. Related to #10971. 2015-01-26 08:39:30 +01:00
Vicente J. Botet Escriba
e74fd82060 Merge from develop. 2015-01-24 18:02:31 +01:00
Vicente J. Botet Escriba
c16ec42941 Take care of #10964. 2015-01-24 16:48:44 +01:00
Vicente J. Botet Escriba
b77eac3e37 Take care of #10963. 2015-01-24 11:57:54 +01:00
Vicente J. Botet Escriba
35d7ae0d2e add forgotten wait when shared_future::then deferred. 2015-01-23 08:36:46 +01:00
Vicente J. Botet Escriba
d9c7f95617 fix future async deferred. 2015-01-23 07:10:22 +01:00
Vicente J. Botet Escriba
06b3f6a9d7 disable async deferred on C++98 as not implemented. 2015-01-23 06:02:11 +01:00
Vicente J. Botet Escriba
895b4a0ac5 Try to fix a lot of issues, even if alldoesn't works yet. 2015-01-22 23:10:40 +01:00
Vicente J. Botet Escriba
9cb72849ee Go towards blocking on the last future associated to an async shared state. shared_future don't work yet. 2015-01-18 12:19:17 +01:00
Vicente J. Botet Escriba
6b60943f3e Added csbl/queue.hpp and concurrent_queues/detail/sync_deque_base.hpp dradt. 2015-01-10 16:09:15 +01:00
Vicente J. Botet Escriba
1fcaa47efa extract future_error,future_status and launch. 2015-01-10 09:02:37 +01:00
Vicente J. Botet Escriba
aac441392a extract wait_for_any for sequences. 2015-01-09 08:09:34 +01:00
Vicente J. Botet Escriba
69d01b9bfd extract wait_for_all into futures/wait_for_all.hpp. 2015-01-07 07:13:48 +01:00
Vicente J. Botet Escriba
7b91ce7b64 move future_error_code.hpp to futures. 2015-01-07 06:42:27 +01:00
Vicente J. Botet Escriba
978884ff0d extracted futures/is_future_type.hpp. 2015-01-07 06:22:20 +01:00
Vicente J. Botet Escriba
ac8ca6eb04 Added notify_when_ready/unnotify_when_ready. 2015-01-07 04:53:50 +01:00
Vicente J. Botet Escriba
1c16c52fe6 Added missing include. 2015-01-04 17:41:52 +01:00
Vicente J. Botet Escriba
9299d26acf cleanup future.hpp. 2014-12-30 11:47:15 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
c0470893d4 Fix failure to build on Android. 2014-12-10 14:36:29 +00:00
Vicente J. Botet Escriba
811f3df98d ensure that the exceptions throw by a task submitted by a serial executor are transfered to it, and so the serial_executor doesn't block forever. 2014-12-06 10:47:43 +01:00
Vicente J. Botet Escriba
421469686d Added ! defined __clang__ when tested defined __GNUC__. 2014-12-03 22:40:34 +01:00
Vicente J. Botet Escriba
72dfa02269 Added BOOST_THREAD_PROVIDES_INVOKE constraing for invoker. 2014-12-03 22:37:42 +01:00
Vicente J. Botet Escriba
83f38ea52c fix detail::priority_queue_top. 2014-11-23 16:47:33 +01:00
Vicente J. Botet Escriba
06a9f9ab6d Added Clock parameter to scheduler and priority_timed_queue. Fix warnings in tests. 2014-11-17 07:34:43 +01:00
Vicente J. Botet Escriba
e7f140cab6 replace >> by > >. 2014-11-14 20:14:03 +01:00
Vicente J. Botet Escriba
1b99fe5587 Replace range-based for loops to make the code more portable. 2014-11-14 08:45:16 +01:00
Vicente J. Botet Escriba
b9a70f7aca don't use std::vector with msvc.a 2014-11-14 00:25:51 +01:00
Vicente J. Botet Escriba
ca87cbf57b workaround bug on Boost.Config that left the section private after using the macro BOOST_DELETED_FUNCTION. 2014-11-11 22:32:25 +01:00
Vicente J. Botet Escriba
929dc55a5a Add default Container parameter to sync_queue/sync_deque as csbl::devector. 2014-11-10 00:40:02 +01:00
Vicente J. Botet Escriba
b29d9f850c Added devector, a minimal vector providing pop_front that can be used as Container of the sync queues. 2014-11-09 20:32:58 +01:00
Vicente J. Botet Escriba
1c81d8a4b1 remove BOOST_NO_CXX11_HDR_DEQUE as it doesn't exists art all :(. 2014-11-09 17:12:54 +01:00
Vicente J. Botet Escriba
7de29f4d45 fix typo in sync_priority_queue.hpp. 2014-11-09 17:12:03 +01:00
Vicente J. Botet Escriba
9b0705cb6f Added deque_views. Make use of sync_queue and refactor to use sync_queue removing _front and _back. 2014-11-09 15:39:10 +01:00
Vicente J. Botet Escriba
3abdb869df Reduce the interface of sync_quue to the queue operations, removing the deprecated ones and removing _front and _back. 2014-11-09 14:12:28 +01:00
Vicente J. Botet Escriba
f90e76a59c Added sync_deque. 2014-11-09 13:45:05 +01:00
Vicente J. Botet Escriba
d4c8185cc9 Added priority_executor_base and refactor scheduled_executor_base. 2014-11-09 12:20:15 +01:00
Vicente J. Botet Escriba
e6501b5485 cleanup scheduled executors. 2014-11-09 11:37:18 +01:00
Vicente J. Botet Escriba
1ae3cb65f7 Make task_region more portable using Boost.Config helper macros. 2014-11-08 23:22:37 +01:00
Vicente J. Botet Escriba
a8ad389bdd Merge branch 'develop' into feature/task_region 2014-11-06 07:42:36 +01:00
Vicente J. Botet Escriba
69c1d40750 Merge branch 'develop' into feature/promise_set_value_emplace 2014-11-05 23:43:02 +01:00
Vicente J. Botet Escriba
58698f44f1 More renamming and added some comments on scheduler.hpp. 2014-11-05 19:41:56 +01:00
Vicente J. Botet Escriba
c87b24923a Added scheduler at/after/on executor factory helper functions. 2014-11-05 00:41:29 +01:00
Vicente J. Botet Escriba
1210fc4859 Add missing include file. 2014-11-05 00:38:21 +01:00
Vicente J. Botet Escriba
d8b6ae6266 Ensure that the numbers of pools is at least 1. 2014-11-05 00:37:52 +01:00
Vicente J. Botet Escriba
04e2223d5e Minor renamming. 2014-11-04 22:51:25 +01:00
Vicente J. Botet Escriba
579748e7a0 Avoid locking while doing callback. 2014-11-04 22:48:57 +01:00
Vicente J. Botet Escriba
41c3914aaf Don't try-catch on try_executing_one_task. 2014-11-02 19:42:18 +01:00
Vicente J. Botet Escriba
8693eec4a4 Make submit strong-thread safe. 2014-11-02 19:41:57 +01:00
Vicente J. Botet Escriba
3f699750a8 Avoid locking while doing callback. 2014-11-02 19:41:42 +01:00
Vicente J. Botet Escriba
4f8243cf59 Remove waiting_empty_. 2014-11-02 19:41:25 +01:00
Vicente J. Botet Escriba
4f01891da7 Added not_ready and timeout queue_op_status. Make sync_timed_queue and sync_priority_queue conform to the sync_queue interface. Aapt the test to the new interface. 2014-11-02 15:13:37 +01:00
Vicente J. Botet Escriba
c1925df81c Fix task exception silently ignored. Make submit throw if closed. join the threads created by the thread_executor 2014-11-02 15:09:11 +01:00
Vicente J. Botet Escriba
6fd7dc0d94 Added move semantics for C++11 compilers. Need of a detail::priority_queue. Tried to do it for C++98, but heap_push/heap_pop algorithms are not move aware:(. 2014-11-01 22:18:32 +01:00
Vicente J. Botet Escriba
a2f2924298 Added missing file sync_queue_base and refactor the concurrent queues to make use of this class. 2014-11-01 22:18:09 +01:00
Vicente J. Botet Escriba
49d485f1aa Removed BOOST_THREAD_QUEUE_DEPRECATE_OLD for priority and timed queues. 2014-11-01 11:21:09 +01:00
Vicente J. Botet Escriba
d7251f223e Added sync_queue_base and refactor the concurrent queues to make use of this class. Make other refactor on priority and timed queues. 2014-11-01 11:02:18 +01:00
Vicente J. Botet Escriba
20a6ef7de8 Added wait_until_not_empty, wait_until_not_empty_or_closed. Rename _q_qempty to _not_empty. 2014-11-01 01:14:41 +01:00
Vicente J. Botet Escriba
d5c41e4c4a Added tyy_pus returning queue_op_status. Rename is_closed to closed. 2014-10-31 23:49:34 +01:00
Vicente J. Botet Escriba
b96b9904b7 move scheduled_executor_base.hpp and declare scheduled_thread_pool::worker_loop inline. 2014-10-31 08:21:27 +01:00
Vicente J. Botet Escriba
304240b206 Move priority/timed queues to concurrent name space and scheduled executors to executors name spapce. 2014-10-31 08:03:15 +01:00
Vicente J. Botet Escriba
c61c139933 merged scheduled executors GSOC project from Ian Forbed. 2014-10-31 00:19:10 +01:00
Vicente J. Botet Escriba
3891eeef52 fix issue with C++98 exception library. 2014-10-26 19:43:47 +01:00
Vicente J. Botet Escriba
f1370b1255 Added a task_region_handle_gen that referes to an existing executor, so that we don't create one each time. 2014-10-26 15:17:25 +01:00
Vicente J. Botet Escriba
69f2a1df72 Added fib_task_region example and allows to work without executors. 2014-10-26 13:21:25 +01:00
Vicente J. Botet Escriba
700301e382 Added exception_list and task_region. 2014-10-26 11:27:18 +01:00
Vicente J. Botet Escriba
952aa44a98 Added promise::emplace and variadic make_ready_future. 2014-10-25 23:31:09 +02:00
Vicente J. Botet Escriba
5fb51a74fe remove thread_was_interrupted and fix wait_internal pending issue. 2014-10-24 18:43:26 +02:00
Adam Wulkiewicz
1a4bd71616 Change members order in win32 thread_data_base to match ctor initializer list. 2014-10-23 00:01:37 +02:00
Vicente J. Botet Escriba
1029fa9c59 take in account deferred/ready futures on variadic when_all/when_any. 2014-10-12 15:47:16 +02:00
Vicente J. Botet Escriba
6f91af2154 Try to address #9569. 2014-10-05 09:11:58 +02:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6fe7f44ea0 Clarified issue #6782 which can now be closed. 2014-10-04 19:47:48 +01:00
Vicente J. Botet Escriba
8fd4755e79 Added shared_future::then executor. 2014-10-04 10:36:57 +02:00
Vicente J. Botet Escriba
02b007a20e Make nullary_function copyable and movable following Boost.Move. Make use of std::shared_ptr when available. 2014-10-04 10:36:44 +02:00
Vicente J. Botet Escriba
c0c78e87fc Make invoker copyable and movable following Boost.Move. 2014-10-04 10:36:31 +02:00
Vicente J. Botet Escriba
58cde5af05 Trying to use std::function for executors::work. This doesn't works yet. 2014-10-03 21:46:57 +02:00
Vicente J. Botet Escriba
c1f2c8a1f1 Added shared_ptr.hpp. 2014-10-03 21:43:50 +02:00
Vicente J. Botet Escriba
bacf5b52ec The added commented lines should work, but don't. 2014-10-03 21:42:42 +02:00
Vicente J. Botet Escriba
f3de7bf10f Add fuutre::then(ex, fct). 2014-10-02 07:36:52 +02:00
Andrey Semashev
b240b097c7 Fix GCC warnings about initialization order 2014-09-30 22:42:13 +04:00
Andrey Semashev
b264ec8fc0 Fix compilation with BOOST_USE_WINDOWS_H defined
Don't use macros defined only in Windows SDK 6.0 and later as this breaks compilation with MinGW and older MSVC.
2014-09-30 22:17:44 +04:00
Vicente J. Botet Escriba
372f8fe10f Merge branch 'develop' of github.com:boostorg/thread into develop 2014-09-29 23:22:16 +02:00
Vicente J. Botet Escriba
e3c240df0a shared_future<R>::then() should be const. 2014-09-29 23:22:03 +02:00
Niall Douglas
748ea5164e Merge pull request #25 from MarcelRaad/patch-1
Fix GetTickCount return type
2014-09-29 19:18:38 +01:00
Vicente J. Botet Escriba
b44627f97d don't use std::queue with MSVC 11. 2014-09-29 00:19:35 +02:00
Vicente J. Botet Escriba
bb72eadbd8 Added validation of invalid inner future in wrap. 2014-09-29 00:00:06 +02:00
Marcel Raad
f52f32afda Fix GetTickCount return type
int as a return type results in a signed/unsigned mismatch warning with MSVC (although disabled by default), and it doesn't even compile with clang-cl if the definiton from the Windows header was included before.
2014-09-28 21:25:36 +02:00
Vicente J. Botet Escriba
b973e9b32e remove BOOST_THREAD_NO_CXX11_DECLTYPE_N3276. 2014-09-28 13:46:21 +02:00
Vicente J. Botet Escriba
1ffef9ed2d Add missing invoke.hpp include. 2014-09-28 13:40:16 +02:00
Vicente J. Botet Escriba
4111471ba5 fix typo on file guard. 2014-09-28 09:19:42 +02:00
Vicente J. Botet Escriba
c7b5729cf3 Avoid the use fo invoke if not available, even if the semantics is not the same. 2014-09-27 19:59:25 +02:00
Vicente J. Botet Escriba
7f5dfb633d MSVC 10 doesn't provide std::is_copy_constructible. Make use of the boost version. 2014-09-26 06:48:40 +02:00
Vicente J. Botet Escriba
f381a7d591 Don't delete copy constructor when rvalue references are disabled. 2014-09-25 07:25:39 +02:00
Vicente J. Botet Escriba
aceabda609 try to avoid to unlock prematurely to see if this is the cause of the test_latch spourious failure. 2014-09-24 08:09:40 +02:00
Vicente J. Botet Escriba
dc4b619b57 Don't delete copy constructor when rvalue references are disabled. 2014-09-23 23:34:42 +02:00
Vicente J. Botet Escriba
abb3fc97e0 fix reported error. 2014-09-23 23:30:26 +02:00
Vicente J. Botet Escriba
ec6ae7b9b4 Take in account small durations. 2014-09-23 23:29:38 +02:00
Vicente J. Botet Escriba
617b979214 try a workaround with MSVC for error C3520: 'T' : parameter pack must be expanded in this context. 2014-09-21 18:58:41 +02:00
Vicente J. Botet Escriba
96667cfcce MSVC 10 doesn't provide std::is_move_constructible. Let as if all classes were movable in this case. 2014-09-21 18:58:23 +02:00
Vicente J. Botet Escriba
a981650ce9 cleanup. 2014-09-20 16:11:03 +02:00
Vicente J. Botet Escriba
b77f802c47 variadic when_all/when_any must retur tuple instead of vector even when all the types are the same.. 2014-09-20 13:25:50 +02:00
Vicente J. Botet Escriba
da945436c1 avoid call to boost::get_system_time() when relative is true. 2014-09-14 21:51:01 +02:00
Vicente J. Botet Escriba
f73007910a replace unique_ptr<T> by optional<T> on shared_state when rvalue references are supported by the compiler, as optional<T> doesn't use Boost.Move. 2014-09-14 21:12:44 +02:00
Vicente J. Botet Escriba
8c3cfacf06 emulate template alias queue views. 2014-09-14 21:00:27 +02:00
Vicente J. Botet Escriba
7d4392e157 try to get rid of missing std::is_copy_constructible < gcc-4.5. 2014-09-14 09:09:59 +02:00
Vicente J. Botet Escriba
aff3f424a9 move sync_queue_closed to concurrent directory. 2014-09-13 22:17:19 +02:00
Vicente J. Botet Escriba
546ca909c4 try to avoid issue with < gcc-4.5 - error: 'is_copy_constructible' is not a member of 'std'. 2014-09-13 22:16:57 +02:00
Vicente J. Botet Escriba
19294dc756 Change ref by ptr on queue fields of queue_views so that the default constructors can be generated on MSVC. 2014-09-11 13:30:48 +02:00
Vicente J. Botet Escriba
52a360775e cleanup. 2014-09-11 07:32:40 +02:00
Vicente J. Botet Escriba
11e4c950ac fix 10478 data race in boost/thread/future.hpp 2014-09-10 13:44:44 +02:00
Vicente J. Botet Escriba
6d68bac44b fix move semantic issues on promise::set_value. Prepare the use of unique_ptr<T,D> to fix allocator issue. 2014-09-09 13:21:01 +02:00
Vicente J. Botet Escriba
5d0d128cab let movelib do the std adaptation. 2014-09-09 13:15:51 +02:00
Vicente J. Botet Escriba
ec542d3c8b remove commented code. 2014-09-08 05:49:10 +02:00
Vicente J. Botet Escriba
6e3216643b Remove future_traits<> as there are always an specialization. 2014-09-07 19:46:02 +02:00
Vicente J. Botet Escriba
e93035ce42 Added run_if_is_deferred to shared_future. 2014-09-06 23:30:36 +02:00
Vicente J. Botet Escriba
53a46593a8 make classes using BOOST_THREAD_MOVABLE_ONLY<T> satisfy is_copy_constructible<T>::value == false. 2014-09-06 14:20:59 +02:00
Vicente J. Botet Escriba
c2426b8fad fix missin common virtual function in queue_base_copyable_only. 2014-09-06 14:19:37 +02:00
Vicente J. Botet Escriba
7d841f6337 fix typo. 2014-09-06 14:18:36 +02:00
Vicente J. Botet Escriba
556bbde8a7 Implemented when_all/when_any when a tuple is returned. 2014-09-04 20:00:03 +02:00
Vicente J. Botet Escriba
722997379b Added thread pool join function. 2014-08-31 18:16:49 +02:00
Vicente J. Botet Escriba
9ee1044f92 Merge branch 'develop' of github.com:boostorg/thread into develop 2014-08-31 09:00:04 +02:00
Vicente J. Botet Escriba
8ebf0e7f21 take in account ready tasks on when_all/when_any. 2014-08-31 08:57:27 +02:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
0dc2f69bc1 Fixed typo in just made merge for WinRT support. 2014-08-30 18:58:43 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
6552cf64b5 Fixed up WinRT support patch not compiling on WinRT. 2014-08-30 18:24:13 +01:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
d5f335b8a4 Merge branch 'winrt2' of https://github.com/MSOpenTech/thread into MSOpenTech-winrt2 2014-08-30 17:16:17 +01:00
Vicente J. Botet Escriba
80591fb64d try to fix 10428 for uinque_ptr issues. 2014-08-30 17:57:12 +02:00
Vicente J. Botet Escriba
0543b522cb try to fix 10340. 2014-08-30 17:54:12 +02:00
Vicente J. Botet Escriba
f1a274b51c make it possible to have polymorphic queue copyable_only/movable_only/copyable_and_movable. 2014-08-29 21:06:15 +02:00
Vicente J. Botet Escriba
f299fb8083 fix typo. 2014-08-29 12:51:42 +02:00
Vicente J. Botet Escriba
074dcbcbf5 make polymorphic queues move operations only available if C++11 RVALE supported. 2014-08-28 22:26:02 +02:00
Vicente J. Botet Escriba
957253401f Try to fix invoker making it ComyConstructible and Movable. 2014-08-27 13:35:59 +02:00
Vicente J. Botet Escriba
3195253230 rollback last merge as it is breaking all the regression tests. 2014-08-27 00:16:19 +02:00
Marcel Raad
3b75d6dabc Use BOOST_THREAD_RV_REF for move constructors
If BOOST_THREAD_FWD_REF is used, the copy constructor is re-declared. Tested with clang 3.4.
2014-08-26 10:17:26 +02:00
Vicente J. Botet Escriba
fc0d7e23b3 remove todo comments. 2014-08-25 17:17:50 +02:00
Vicente J. Botet Escriba
aeabda8d45 make use of move when a rvalue is used and make use of BOOST_THREAD_FWD_REF when a URef is used. 2014-08-24 22:48:06 +02:00
Vicente J. Botet Escriba
3bde7e103c Added virtual submit(work&). 2014-08-24 18:17:59 +02:00
Vicente J. Botet Escriba
ea0889485e Make use of BOOST_THREAD_COPYABLE_AND_MOVABLE and BOOST_THREAD_COPY_ASSIGN_REF when appropriated. 2014-08-24 18:16:28 +02:00
Vicente J. Botet Escriba
d4d46c64dd fix loop_executor run_queued_closures issue. 2014-08-23 19:14:21 +02:00
Vicente J. Botet Escriba
f3fa80c866 Added generic_executor_ref, queue_base and queue views, fix some issues in executors. 2014-08-23 18:29:47 +02:00
Vicente J. Botet Escriba
7e21f24991 Merge branch 'develop' of github.com:boostorg/thread into develop 2014-08-21 19:18:56 +02:00
Eric Niebler
8aef8000d9 Merge branch 'master' into develop 2014-08-03 12:12:27 -07:00
Andrey Semashev
0b2a61bca0 Fixed compilation with gcc 4.6 in C++11 mode
The compiler considers invoke() call ambiguous when the function object is actually a function pointer. This caused compilation errors in Boost.Coroutine, which uses invoke() through call_once(). Also added missing includes.
2014-08-03 11:58:54 -07:00
Niall Douglas
78f1044c68 The previous mingw32 fix unfortunately broke mingw-w64, so that is now fixed too. 2014-08-02 21:38:31 +01:00
Niall Douglas
26042ca26a Fixed mingw32 compile breakage. 2014-08-02 18:56:08 +01:00
Vicente J. Botet Escriba
74132067ba prepare tss<void>. 2014-07-31 19:29:19 +02:00
Vicente J. Botet Escriba
c4d42e6b6c make use of wait_pull_front instead of pull_front. 2014-07-31 19:28:04 +02:00
Andrey Semashev
b81a838a43 Fixed compilation with gcc 4.6 in C++11 mode
The compiler considers invoke() call ambiguous when the function object is actually a function pointer. This caused compilation errors in Boost.Coroutine, which uses invoke() through call_once(). Also added missing includes.
2014-07-31 02:27:33 +04:00
Vicente J. Botet Escriba
c6e70226ea Merge branch 'develop' 2014-07-26 07:19:59 +02:00
Steve Gates
a06dde3794 Merge branch 'develop' into winrt2
Conflicts:
	include/boost/thread/win32/thread_primitives.hpp
	src/win32/gettickcount64.cpp
2014-07-18 12:19:46 -07:00
Steve Gates
726a3faf19 Removing QueueUserAPC on Windows Runtime. 2014-07-17 10:49:09 -07:00
Niall Douglas
590a3d99b0 Merge pull request #20 from ned14/develop
Decrufted GetTicksCount64 patch. Fixed break of build on MSVC.
2014-07-11 10:27:27 +01:00
Steve Gates
c977c8d420 Qualifying some functions calls in thread_primitives.hpp to avoid potentially ambiguity. 2014-07-10 18:09:24 -07:00
Steve Gates
a1faacd7bb Fixing up copyrights that got reordered. 2014-07-09 16:43:48 -07:00
Steve Gates
866b78cbd0 Addressing more feedback:
Reverting disabling thread attributes for WinRT.
Created common GetSystemInfo/GetNativeSystemInfo function.
Fix this_thread get_id() bug on WinRT.
Enabled initializing the Windows Runtime in each test for execution. This
is not when using in Windows store/phone applications, just if a desktop
app.
2014-07-09 15:47:37 -07:00
Steve Gates
0861f81b05 Merge branch 'develop' of https://github.com/boostorg/thread into feedback 2014-07-08 14:53:47 -07:00
Steve Gates
6488028a22 Incorporating feedback: removed copyright, removed some ifdefs. 2014-07-08 14:53:39 -07:00
Vicente J. Botet Escriba
14dfe49c50 Merge branch 'develop' 2014-07-08 21:56:44 +02:00
Vicente J. Botet Escriba
08c4599fb6 Added inline for when_all() and when_any(). 2014-07-07 22:07:44 +02:00
Vicente J. Botet Escriba
ca14e6187d Merge branch 'develop' 2014-07-06 18:48:30 +02:00
Vicente J. Botet Escriba
f263c6014e fix wait_pull_front in case the queue is closed while empty. 2014-07-06 18:47:48 +02:00
Vicente J. Botet Escriba
9e962e12e2 Merge branch 'develop' 2014-07-06 11:48:55 +02:00
Vicente J. Botet Escriba
6e154d45a4 fix wait_pull_front issue introduced in previous commit and add more tests. 2014-07-06 11:05:51 +02:00
Vicente J. Botet Escriba
6074487b73 Fix isse on sync_bounded_queue::wait_push_front and add tests. 2014-07-05 19:38:10 +02:00
Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)
04c53415fd Extracted the original GetTicksCount64 de-cruft patch and rebased on boostorg/thread:develop. 2014-07-05 16:38:17 +01:00
Vicente J. Botet Escriba
fe6daec2bc don't close the queue when an exception is throw, don't return empty on wait_pull_pull_front. 2014-07-05 14:57:37 +02:00
Vicente J. Botet Escriba
817591b87c protect the use of && when BOOST_NO_CXX11_RVALUE_REFERENCES is defined. 2014-07-04 08:07:57 +02:00
Vicente J. Botet Escriba
d7a3f124db Merge branch 'develop' 2014-07-03 07:10:04 +02:00
Steve Gates
9ceea9822f Enabling Boost.Thread to be used in the Windows Runtime.
This involves basically 3 changes:
1. Using __declspec(thread) instead of the Tls APIs.
2. Using Windows::System::Threading since Win32 Threading APIs aren't allowed.
3. Updating or replacing some banned APIs like WaitForSingleObject with WaitForSingleObjectEx.
2014-07-02 14:21:43 -07:00
Vicente J. Botet Escriba
00ad9dddb9 Added nested type op_status. 2014-06-29 23:04:34 +02:00
Andrey Semashev
99ac322223 Fix warnings about redefining a defined macro
The warnings appear when a dependent project (e.g. Boost.Log tests and examples) builds with link=shared and defines BOOST_ALL_DYN_LINK macro. In this case BOOST_THREAD_USE_DLL is defined by both thread/build/Jamfile.v2 and boost/thread/detail/config.hpp. This commit makes sure that doesn't happen.
2014-06-22 19:13:01 +04:00
Vicente J. Botet Escriba
414fce4580 Merge branch 'develop' 2014-06-13 18:58:08 +02:00
Vicente J. Botet Escriba
fe195e776b make use of underlying_cast<int> insted of int cast. 2014-06-12 19:43:16 +02:00
Marcel Raad
3a5c926930 Fix for BOOST_NO_CXX11_RVALUE_REFERENCES
Fix compilation of future.hpp with BOOST_NO_CXX11_RVALUE_REFERENCES defined. Tested on clang and MSVC12.

BOOST_NO_CXX11_RVALUE_REFERENCES has to be defined if the compiler provides rvalue references, but the standard library doesn't provide std::move. Without these fixes, the deleted copy constructor is called.
2014-06-12 17:41:20 +02:00
Vicente J. Botet Escriba
ac1b9653f3 Merge branch 'develop' 2014-06-09 17:55:57 +02:00
Vicente J. Botet Escriba
54ee07e745 Make use of core files. 2014-06-09 17:35:00 +02:00
Vicente J. Botet Escriba
4def87448e Merge pull request #12 from Lastique/patch-3
Silence warnings about unused variables.
2014-06-09 15:07:48 +02:00
Vicente J. Botet Escriba
fcf7a1811e make use of underlying_cast<int> when casting from an enum class. 2014-06-09 14:04:11 +02:00
Andrey Semashev
d8f628ae65 Silence warnings about unused variables. 2014-06-09 15:20:12 +04:00
Vicente J. Botet Escriba
0bd10b7244 Merge branch 'develop' 2014-06-08 12:11:31 +02:00
Vicente J. Botet Escriba
24635c588f Removed incomplete file. 2014-06-04 13:04:59 +02:00
Vicente J. Botet Escriba
4f8106c00e remove dependency on Optional. 2014-06-04 08:21:08 +02:00
Vicente J. Botet Escriba
3c4f1ea365 remove dependency on MPL. 2014-06-04 08:20:28 +02:00
Vicente J. Botet Escriba
8c0640e5be Fix typo. 2014-05-21 20:07:53 +02:00
Kyle Lutz
d3d2ad2390 Add variadic wait_for_all() and wait_for_any() functions 2014-05-20 22:49:44 -07:00
Vicente J. Botet Escriba
0a4af0c5ed Merge branch 'develop' 2014-03-10 19:28:02 +01:00
Andrey Semashev
0d10e282fa Fix compilation on Windows
Corrected is_special method name.
2014-03-10 19:43:46 +03:00
Vicente J. Botet Escriba
e8181da6d4 Merge branch 'develop' 2014-03-09 14:47:51 +01:00
Vicente J. Botet Escriba
68dc454a66 Take in account pos_infinity. 2014-03-09 14:42:50 +01:00
Vicente J. Botet Escriba
0e0ee99c61 Added BOOST_THREAD_DECL to GetTickCount64. 2014-03-04 00:29:39 +01:00
Vicente J. Botet Escriba
f747d79c5b comment redefinition of ticks_type. 2014-03-02 12:46:56 +01:00
Vicente J. Botet Escriba
143adde27d pull patch for #8070. 2014-02-27 07:47:20 +01:00
Vicente J. Botet Escriba
d2a65d2427 fix #9711. 2014-02-26 22:08:09 +01:00
Vicente J. Botet Escriba
cc29295986 Merge branch 'develop' 2014-02-21 13:37:06 +01:00
Vicente J. Botet Escriba
1dbf7028fe Try to workaround some issues with MSVC lambdas. 2014-02-21 10:52:18 +01:00
Vicente J. Botet Escriba
0bba5e630e Merge branch 'develop' 2014-02-16 23:39:00 +01:00
Vicente J. Botet Escriba
84c30313a2 Start invoker_ret. 2014-02-16 23:34:52 +01:00
Vicente J. Botet Escriba
54646e9959 Added sleep_for/until with no interruption point. 2014-02-16 23:33:03 +01:00
Vicente J. Botet Escriba
3f5823f50a Add parallel_quick_sort example. 2014-02-16 17:25:49 +01:00
Vicente J. Botet Escriba
e1636bdbd5 Take care of #9618: try_join_for(ms(1)). 2014-02-16 10:53:07 +01:00
Vicente J. Botet Escriba
750c849b0f merge from develop for 1.56. 2014-02-15 16:08:32 +01:00
Vicente J. Botet Escriba
0a05db8399 rename async_func.hpp by invoker.hpp. 2014-02-11 22:39:55 +01:00
Vicente J. Botet Escriba
1d7da085ea rename async_func.hpp by invoker.hpp. 2014-02-10 07:42:28 +01:00
Vicente J. Botet Escriba
75236fe3ae rename async_func by invoker. 2014-02-09 16:53:19 +01:00
Vicente J. Botet Escriba
b1ac899f23 Pulled with_lock_guard patch. 2014-02-09 03:42:39 +01:00
Vicente J. Botet Escriba
4a54ac0331 make functions that must be private private, e.g. as start_thread. 2014-02-08 17:43:23 +01:00
Vicente J. Botet Escriba
51e49c69b5 refactor elapsed time check and fix bad uses of base_type. in csbl::unique_ptr. 2014-02-08 16:28:02 +01:00
Vicente J. Botet Escriba
ab2a180de5 Added test for async_func and fixed a some issues. 2014-02-08 07:58:39 +01:00
Vicente J. Botet Escriba
3772a8294b Format/indent file. 2014-02-07 07:32:34 +01:00
Vicente J. Botet Escriba
980772d514 Added make_ready_no_decay_future and remove the use of asynch on make_future test. 2014-02-03 18:31:43 +01:00
Vicente J. Botet Escriba
94b27db991 move when mawros to config.hpp file. 2014-02-03 18:30:08 +01:00
Vicente J. Botet Escriba
0a58445b63 comment #error 2014-02-02 08:47:56 +01:00
Vicente J. Botet Escriba
8682f7cb48 Added some test to internal invoke function add the associated fixes. 2014-02-02 08:13:58 +01:00
Vicente J. Botet Escriba
36bc3c0523 Added 2 arguments async executor. 2014-01-28 23:08:07 +01:00
Vicente J. Botet Escriba
0218cb90b3 fix typo issues on invoke. 2014-01-28 23:01:41 +01:00
Vicente J. Botet Escriba
f4d4c16294 try to fix compiler error while using std::get instead of csbl::get 2014-01-27 22:30:48 +01:00
Vicente J. Botet Escriba
85d22a8d93 Added exceptional_ptr and adapt futures to be implicitly convertible from exceptional_ptr. 2014-01-26 17:55:09 +01:00
Vicente J. Botet Escriba
7eb67443dd Added exceptional_ptr and adapt futures to be implicitly convertible from exceptional_ptr. 2014-01-26 17:53:49 +01:00
Vicente J. Botet Escriba
4308e0ec24 Added make_exceptional_future. 2014-01-26 09:19:31 +01:00
Vicente J. Botet Escriba
ac9497dec9 Try to solve some issues with invoke on MSVC. 2014-01-26 09:18:34 +01:00
Vicente J. Botet Escriba
8fec35f444 Update mutex destructor to see if the assertion message is better. 2014-01-26 09:15:12 +01:00
Vicente J. Botet Escriba
7b3fa08503 make shared_state_nullary_task copyable and movable and avoid msvc default generation. 2014-01-20 23:02:48 +01:00
Vicente J. Botet Escriba
690feeb9ba indent and comment #if. 2014-01-19 07:56:57 +01:00
Vicente J. Botet Escriba
5d76ab52e7 reorder async() conditional compilation variants to factor more code. 2014-01-19 07:52:38 +01:00
Vicente J. Botet Escriba
cb845f19e4 Fix issues with future::async and disable the code when BOOST_NO_CXX11_DECLTYPE_N3276 is defined as it is bugged. 2014-01-18 15:27:03 +01:00
Vicente J. Botet Escriba
2886e985b4 cleanup comments. 2014-01-16 23:58:37 +01:00
Vicente J. Botet Escriba
f4d0ecbab5 Added at thread entry callback on thread pool. 2014-01-13 22:51:57 +01:00
Vicente J. Botet Escriba
1fc78c7ceb Added inline and thread executors. 2014-01-13 22:16:09 +01:00
Vicente J. Botet Escriba
5c18d92a5f Make work public. 2014-01-13 22:10:34 +01:00
Vicente J. Botet Escriba
06325961ef Make work public. 2014-01-13 22:09:43 +01:00
Vicente J. Botet Escriba
10b283e03a Added missing iomanip include. 2014-01-13 22:08:20 +01:00
Vicente J. Botet Escriba
6ab71dc057 executor_adaptor<serial_executor> a(b) doesn't compiles on C++03. 2014-01-12 18:28:24 +01:00
Vicente J. Botet Escriba
47be5228b1 fix typo on try_push_back. 2014-01-12 18:26:46 +01:00
Vicente J. Botet Escriba
6c5a6e4330 Reorganized executors on its own directory adding serial_executor and renamed thread_pool by basic_thread_pool and user_scheduler by loop_scheduler. 2014-01-12 17:52:27 +01:00
Vicente J. Botet Escriba
326842cc7f Fix #9335 Missing exception safety might result in crash 2014-01-11 21:19:05 +01:00
Vicente J. Botet Escriba
9f592860cd Update sync queues closed operations 2014-01-11 18:57:44 +01:00
Vicente J. Botet Escriba
74bb7d6b29 Thread: for explicit constructor for nullary_function.
[SVN r86772]
2013-11-19 22:00:56 +00:00
Vicente J. Botet Escriba
fbfda71555 Thread: Allows to force the use of boost libraries on csbl.
[SVN r86771]
2013-11-19 21:58:59 +00:00
Vicente J. Botet Escriba
f3a66f76e0 Thread: merge from trunk for 1.56.
[SVN r86770]
2013-11-19 21:58:34 +00:00
Vicente J. Botet Escriba
19346e1817 Thread: improve async_func to try to solve msvc issue with executor.
[SVN r86744]
2013-11-17 23:44:45 +00:00
Vicente J. Botet Escriba
f6edd7cace Thread: use PP only if MSVC not defined, until I can debug it.
[SVN r86714]
2013-11-15 19:51:40 +00:00
Vicente J. Botet Escriba
126ed2428b Thread: try to remove warning C4520: 'boost::executor_adaptor<boost::thread_pool>' : multiple default constructors specified.
[SVN r86698]
2013-11-14 18:53:51 +00:00
Vicente J. Botet Escriba
fd631e2794 Thread: remove BOOST_THREAD_MAX_ARGS_P1.
[SVN r86697]
2013-11-14 17:56:07 +00:00
Vicente J. Botet Escriba
44f9a2f4ad Thread: merge dummy replacement to fix #9341.
[SVN r86658]
2013-11-12 18:35:19 +00:00
Vicente J. Botet Escriba
e1d6baddd6 Thread: merge missing thread move constructor noexcept.
[SVN r86656]
2013-11-12 18:32:37 +00:00
Vicente J. Botet Escriba
9287a29c9d Thread: Adding pp variadic to asyn_func and fix some typos.
[SVN r86629]
2013-11-11 23:00:37 +00:00
Vicente J. Botet Escriba
5c0cecaaf8 Thread: add _back/_front using queue_op_status interface to sync queues and update the depending classes thread_pool and user_scheduler; Simplfy some test to isolate the errors on msvc-12.
[SVN r86616]
2013-11-11 10:43:15 +00:00
Vicente J. Botet Escriba
713f5a449c Thread: Added missing include.
[SVN r86599]
2013-11-09 15:26:49 +00:00
Vicente J. Botet Escriba
b336427571 Thread: try to fix error on mscv-12 when scoped_thread uses private dummy class with enable_if.
[SVN r86595]
2013-11-09 11:50:21 +00:00
Vicente J. Botet Escriba
2a16b649ad Thread: Added caller_context.hpp; Change executor by Executor template parameter in async; update the number of time the failing tests are run to catch all the compilers.
[SVN r86586]
2013-11-08 17:51:39 +00:00
Vicente J. Botet Escriba
3723cedcab Thread: Added user_scheduler (loop_executor).
[SVN r86570]
2013-11-06 06:37:46 +00:00
Vicente J. Botet Escriba
88880770d3 Thread: merge [86540] to fix #9319.
[SVN r86552]
2013-11-03 20:43:42 +00:00
Vicente J. Botet Escriba
9138a2ae92 Thread: Added missing variadic constructor for task_shared_state.
[SVN r86548]
2013-11-03 16:17:23 +00:00
Vicente J. Botet Escriba
19290fddf9 Thread: manage system::errc as it was an real enum class, so no implicitly convertible to an int.
[SVN r86544]
2013-11-02 09:58:33 +00:00
Vicente J. Botet Escriba
6e81db4172 Thread: try to avoid compile error with msvc.12.
[SVN r86542]
2013-11-02 09:54:13 +00:00
Vicente J. Botet Escriba
3a68a63478 Thread: unlock around the calls to continuations oe deferred future executions.
[SVN r86540]
2013-11-01 21:08:00 +00:00
Vicente J. Botet Escriba
7875edd234 Thread: make use of csbl to make the code more readable and to ensure that it interact well with the std.
[SVN r86504]
2013-10-28 20:08:39 +00:00
Vicente J. Botet Escriba
2be0b4f8fd Thread: added missing boost/tuple/tuple.hpp file.
[SVN r86498]
2013-10-28 10:34:51 +00:00
Vicente J. Botet Escriba
67528fc9af Thread: fix thread move constructor noexecpt.
[SVN r86493]
2013-10-28 02:31:55 +00:00
Vicente J. Botet Escriba
4da1e9dca1 Thread: cleanup replacing some macros by the types imported on csbl namespace comming from std or boost. Cleanup work type ussage.
[SVN r86471]
2013-10-26 23:35:40 +00:00
Vicente J. Botet Escriba
955b207c05 Thread: Added csbl (Common Std Boost Library) files, which allows to use on the csbl namespace eother a std or a boost file, e.g. tuple, vector, functional.
[SVN r86453]
2013-10-26 15:07:34 +00:00
Vicente J. Botet Escriba
51aff0fb00 Thread: Adapt barrier to new nullary_function.
[SVN r86443]
2013-10-26 10:23:00 +00:00
Vicente J. Botet Escriba
bfe7af29bc Thread: adapt thread_pool and executor to the new nullary_function work.
[SVN r86442]
2013-10-26 10:21:27 +00:00
Vicente J. Botet Escriba
4681104b33 Thread: Added a portable copyable/movable thread_pool/executor work.
[SVN r86441]
2013-10-26 10:20:13 +00:00
Vicente J. Botet Escriba
d602f44af6 Thread: Added a portable copyable/movable nullary_function functor.
[SVN r86440]
2013-10-26 10:20:02 +00:00
Vicente J. Botet Escriba
dc55945760 Thread: Add BOOST_THREAD_RV when accessing a BOOST_THREAD_RV_REF to be portable.
[SVN r86439]
2013-10-26 10:19:38 +00:00
Vicente J. Botet Escriba
f7f0347780 Thread: first steps toward async(executor&, f).
[SVN r86327]
2013-10-16 06:15:51 +00:00
Vicente J. Botet Escriba
d6c4be0cd0 Thread: add thread_pool reserv for worker threads.
[SVN r86291]
2013-10-13 13:15:05 +00:00
Vicente J. Botet Escriba
e146febd70 Thread: Added future::when_all/when_any (async vector version) for C++11 compilers.
[SVN r86290]
2013-10-13 13:08:29 +00:00
Vicente J. Botet Escriba
cad6f2b9a6 Thread: Add Copyright.
[SVN r86282]
2013-10-13 10:11:06 +00:00
Tim Blechmann
fc65611e82 Revert "Thread: provide physical concurrency conditional until it no regression is introduced."
This reverts commit 271ba281aecd5c556b2b863a9f05a8066e717854.

[SVN r86215]
2013-10-09 15:24:58 +00:00
Vicente J. Botet Escriba
8c6dcb9709 Thread: fix some issues with double definition of shared_state_base and avoid ambiguity of disable_if with Boost.Test.
[SVN r86202]
2013-10-08 17:09:38 +00:00
Vicente J. Botet Escriba
67afa35c49 Thread: try to fix issue with double definition of shared_state_base.
[SVN r86162]
2013-10-04 20:07:03 +00:00
Vicente J. Botet Escriba
63d9ae2b29 Thread: Added a polymorphic executor and an executor_adaptor.
[SVN r86161]
2013-10-04 20:05:26 +00:00
Vicente J. Botet Escriba
08aa0d2fb6 Thread: use boost::disable_if instead of disable_if to avoid ambiguity.
[SVN r86140]
2013-10-02 22:45:23 +00:00
Stephen Kelly
3c8334f8c4 Thread: Remove obsolete GCC version check.
[SVN r86117]
2013-10-01 08:48:07 +00:00
Vicente J. Botet Escriba
0e2c8ed9e3 Thread: ensure that the thread is joined on the future destructor created by future<T>::then().
[SVN r86010]
2013-09-29 19:10:11 +00:00
Vicente J. Botet Escriba
e3a1498355 Thread: provide physical_concurrency conditionally.
[SVN r86002]
2013-09-29 14:41:01 +00:00
Vicente J. Botet Escriba
6fab117c17 Thread: future::then should join the thread before destruction.
[SVN r85962]
2013-09-26 14:47:24 +00:00
Vicente J. Botet Escriba
4a63d4992c Thread: provide physical concurrency conditional until it no regression is introduced.
[SVN r85926]
2013-09-26 06:54:33 +00:00
Tim Blechmann
04e3d918fb thread: implement physical_concurrency
[SVN r85864]
2013-09-24 06:41:24 +00:00
Vicente J. Botet Escriba
0073516f0a Thread: added missing function wrapper.
[SVN r85863]
2013-09-24 05:35:11 +00:00
Vicente J. Botet Escriba
89de3dcf4f Thread: make it possible to use non default constructible types in sync_queue, but sync_bounded_queue requires it yet.
[SVN r85861]
2013-09-23 21:40:08 +00:00
Vicente J. Botet Escriba
47f40f991f Thread: added first thread_pool.
[SVN r85855]
2013-09-23 16:45:00 +00:00
Vicente J. Botet Escriba
8b351fe473 Thread: fix some move semantic issues on sync_queue and sync_bounded_queue and add tests.
[SVN r85854]
2013-09-23 16:44:26 +00:00
Vicente J. Botet Escriba
24f1e620e8 Thread: fix some move issues on sync_queue.
[SVN r85841]
2013-09-22 22:23:58 +00:00
Andrey Semashev
3a7f0b1e78 Merged changes from trunk.
[SVN r85818]
2013-09-22 09:57:15 +00:00
Vicente J. Botet Escriba
8f06153f46 Thread: merge from trunk to fix 8070 and possibly 7461.
[SVN r85815]
2013-09-21 20:45:06 +00:00
Vicente J. Botet Escriba
fcc027369f Thread: try to fix win32 condition_variable issue #7461.
[SVN r85733]
2013-09-17 21:01:05 +00:00
Vicente J. Botet Escriba
5c78582794 Thread: refactor make_ready_at_thread_exit + inhibit at_thread_exit functions from external threads.
[SVN r85732]
2013-09-17 20:57:46 +00:00
Vicente J. Botet Escriba
650e374492 Thread: Added ostream_buffer.
[SVN r85709]
2013-09-16 17:24:30 +00:00
Vicente J. Botet Escriba
3ac48bdd65 Thread: patch for #8070 to make use of GetTickCount64 when available.
[SVN r85701]
2013-09-16 16:55:21 +00:00
Vicente J. Botet Escriba
c3c8ada97d Thread: replace TABS.
[SVN r85677]
2013-09-15 16:13:47 +00:00
Vicente J. Botet Escriba
325d8cf5ca Thread: merge atomic linked conditionaly + future:get_exception_ptr.
[SVN r85666]
2013-09-14 14:22:45 +00:00
Vicente J. Botet Escriba
134c323958 Thread: merge scoped_thread constr + condition_variable timed wait issues on windows + doc typos.
[SVN r85663]
2013-09-13 19:01:48 +00:00
Vicente J. Botet Escriba
fd5dd0c2ed Thread: added future<>::get_exception_ptr().
[SVN r85644]
2013-09-10 19:40:14 +00:00
Vicente J. Botet Escriba
5520763a73 Thread fix #8943.
[SVN r85622]
2013-09-09 17:04:15 +00:00
Vicente J. Botet Escriba
73f5c060ca Thread: merge from trunk upgrade_to_unique_lock::mutex() + doc typos + BOOST_THREAD_USES_ATOMIC doc + synchronized _value call + rename wait_until params.
[SVN r85603]
2013-09-08 09:50:12 +00:00
Vicente J. Botet Escriba
c67e39f126 Thread: protect condition_variable/_any wait_for and wait_until from malicious input.
[SVN r85592]
2013-09-07 12:11:44 +00:00
Vicente J. Botet Escriba
1e49343ff4 Thread: try to handle with call_once intel issue #8943.
[SVN r85539]
2013-09-01 07:22:21 +00:00
Vicente J. Botet Escriba
93d1855e64 Thread: fix scoped_thread variadic constructor.
[SVN r85494]
2013-08-27 22:37:15 +00:00
Vicente J. Botet Escriba
cbc4266774 Thread: rename wait_until parameter to avoid shadow with member function.
[SVN r85463]
2013-08-25 15:09:12 +00:00
Vicente J. Botet Escriba
3a038d33e5 Thread: rename check by cgeck_counter to avoid conflict with macro.
[SVN r85462]
2013-08-25 15:08:08 +00:00
Vicente J. Botet Escriba
2d50af8481 Thread: Added synchronized_value operator() to synchronize around a function call.
[SVN r85306]
2013-08-11 20:33:47 +00:00
Vicente J. Botet Escriba
e438c98070 Thread: Add mutex() to upgrade_to_unique_lock (#8891).
[SVN r85195]
2013-08-03 07:47:18 +00:00
Vicente J. Botet Escriba
d759dd2dba Thread: fix issue with continuation's future parameter which must taken by value.
[SVN r84978]
2013-07-07 20:36:05 +00:00
Hartmut Kaiser
fe46155997 Getting rid of 64bit warning generated by VS2012
[SVN r84960]
2013-07-06 18:51:54 +00:00
Vicente J. Botet Escriba
cacb5b19a6 Thread: fix issue with future<>::then() when th efuture was not created with async.
[SVN r84955]
2013-07-04 21:44:25 +00:00
Vicente J. Botet Escriba
30803a38b2 Thread: Added assertion on testable_mutex lock when the mutex is locked by this thread.
[SVN r84954]
2013-07-04 21:42:11 +00:00
Vicente J. Botet Escriba
29babb974e Thread: remove warning in barrier.hpp.
[SVN r84952]
2013-07-04 21:38:33 +00:00
Vicente J. Botet Escriba
66578bf57b Thread: rollback change in #8070 as this includes a regression on windows XP.
[SVN r84946]
2013-07-03 21:16:49 +00:00
Vicente J. Botet Escriba
52039f75a3 Thread: fix some issues with sync_bounded_queue and added tests.
[SVN r84888]
2013-06-23 20:47:03 +00:00
Vicente J. Botet Escriba
bb6fcc3b5c Thread: unused parameter warning removal.
[SVN r84887]
2013-06-23 20:45:26 +00:00
Vicente J. Botet Escriba
1fc1d8aedb Thread: Added future unwrapp constructor.
[SVN r84810]
2013-06-16 21:29:52 +00:00
Vicente J. Botet Escriba
042a86c984 Thread: added completion function on barrier class.
[SVN r84809]
2013-06-16 21:27:59 +00:00
Vicente J. Botet Escriba
364f3ea030 Thread: try to fix regression on MSVC 8/9.
[SVN r84807]
2013-06-16 19:34:25 +00:00
Vicente J. Botet Escriba
6873d85650 Thread: Added future::unwrap()/get_or()/fallback_to().
[SVN r84719]
2013-06-09 21:41:00 +00:00
Vicente J. Botet Escriba
b59e57e4cc Thread: used cons& in deleted constructors and assignment simulation.
[SVN r84718]
2013-06-09 21:29:17 +00:00
Vicente J. Botet Escriba
d0f9d6216a Thread: remove const on strict locks mutex() function.
[SVN r84712]
2013-06-09 09:15:26 +00:00
Vicente J. Botet Escriba
ff9636b8e0 Thread: take in account wait_abandoned.
[SVN r84710]
2013-06-09 08:28:28 +00:00
Vicente J. Botet Escriba
d83d23bee0 Thread: force use of chrono on windows.
[SVN r84709]
2013-06-09 08:27:00 +00:00
Vicente J. Botet Escriba
0c44630029 Thread: fix bug on future::then when the continuation is void() ir T&().
[SVN r84685]
2013-06-08 10:53:46 +00:00
Vicente J. Botet Escriba
a01af79331 Thread: apply patch #8550.
[SVN r84684]
2013-06-08 08:21:34 +00:00
Vicente J. Botet Escriba
2df6ce78a4 Thread: fix promise set_at_..._thread_exit; Added preconditions.
[SVN r84678]
2013-06-07 19:03:49 +00:00
Vicente J. Botet Escriba
5a1a9df623 Thread: fix shared_future::get when the shared state is async; refactor the shared_state classes.
[SVN r84607]
2013-06-02 05:56:13 +00:00
Vicente J. Botet Escriba
a6f67e25e3 Thread: fix packaged_task<void()> issue and add tests.
[SVN r84597]
2013-06-01 14:27:16 +00:00
Vicente J. Botet Escriba
b69ec54695 Thread: continue the future.hpp renaming using shared_state.
[SVN r84590]
2013-06-01 07:05:35 +00:00
Vicente J. Botet Escriba
dc8449bd0e Thread: Added shared_future::then.
[SVN r84541]
2013-05-28 20:25:34 +00:00
Vicente J. Botet Escriba
d3a6277714 Thread: Reintroduce BOOST_VERIFY on pthread_mutex_destroy return type #8626.
[SVN r84540]
2013-05-28 20:06:51 +00:00
Vicente J. Botet Escriba
5a43d5ffe9 Thread: fix copy_exception ambiguity.
[SVN r84520]
2013-05-26 21:26:25 +00:00
Vicente J. Botet Escriba
c628e51e6c Thread: little refactoring on future.hpp; Added make_ready_future.
[SVN r84493]
2013-05-25 12:44:43 +00:00
Vicente J. Botet Escriba
9e07202e21 Thread: rename internal future_object class by shared_state.
[SVN r84474]
2013-05-25 06:36:37 +00:00
Vicente J. Botet Escriba
4cf80c6685 Thread: update latch to use generation to prevent spurious wake-ups.
[SVN r84421]
2013-05-22 17:18:23 +00:00
Vicente J. Botet Escriba
294a5404c2 Thread: fix inspection issues
[SVN r84418]
2013-05-22 17:09:49 +00:00
Vicente J. Botet Escriba
6d01267030 Thread: manage with #8596.
[SVN r84414]
2013-05-22 05:40:58 +00:00
Vicente J. Botet Escriba
1c48d237a8 Thread: fix sur parolle.
[SVN r84331]
2013-05-17 19:24:19 +00:00
Vicente J. Botet Escriba
9d10bd035a Thread: fix inspection report.
[SVN r84329]
2013-05-17 19:20:45 +00:00
Vicente J. Botet Escriba
d8a9331464 Thread: Rollback unwanted and unchecked change
[SVN r84138]
2013-05-04 16:03:48 +00:00
Vicente J. Botet Escriba
b60968b045 Thread: remove definition of BOOST_THREAD_NOEXCEPT_OR_THROW.
[SVN r84134]
2013-05-04 09:05:11 +00:00
Vicente J. Botet Escriba
da41bdb632 Thread: update externally_locked.
[SVN r84110]
2013-05-02 15:42:12 +00:00
Vicente J. Botet Escriba
5fcfd0e4e8 Thread: update the externally_locked_stream interface.
[SVN r84109]
2013-05-02 15:32:29 +00:00
Vicente J. Botet Escriba
2d2d1112d6 Thread: replace boost:tuple in async_func.hpp as not movable until the patch is applied.
[SVN r84098]
2013-05-01 09:19:18 +00:00
Vicente J. Botet Escriba
757327ba10 Thread: apply patch for #8530.
[SVN r84096]
2013-05-01 08:18:03 +00:00
Vicente J. Botet Escriba
5779f6676d Thread: update externally_locked with assignment.
[SVN r84076]
2013-04-28 20:12:28 +00:00
Vicente J. Botet Escriba
b359424858 Thread: refactor latch by adding an internal counter that has an associated condition_variable and add doc.
[SVN r84075]
2013-04-28 20:09:50 +00:00
Vicente J. Botet Escriba
83167d8c15 Thread: make barrier not copyable.
[SVN r84064]
2013-04-28 12:10:24 +00:00
Vicente J. Botet Escriba
7d2270f8c8 Thread: try to fix time based functions.
[SVN r84056]
2013-04-27 14:39:45 +00:00
Vicente J. Botet Escriba
f87dbb83b1 Thread: Added latch and completion_latch classes.
[SVN r84055]
2013-04-27 06:51:18 +00:00
Vicente J. Botet Escriba
d42f4ff169 Thread: re-apply the change to invoke as it works for gcc but not for msvc.
[SVN r84004]
2013-04-21 15:32:16 +00:00
Vicente J. Botet Escriba
f5e246ebb0 Thread: rollback comments on invoke as there is a regression on msvc.
[SVN r83988]
2013-04-20 16:31:10 +00:00
Vicente J. Botet Escriba
467a88c4f8 Thread: make use of _POSIX_TIMEOUTS instead of _POSIX_C_SOURCE on the definition BOOST_PTHREAD_HAS_TIMEDLOCK #8443.
[SVN r83962]
2013-04-18 21:34:32 +00:00
Vicente J. Botet Escriba
ecd97ec4ea Thread: make invoke/async_tuple/tuple_indices more portable.
[SVN r83950]
2013-04-18 06:44:09 +00:00
Vicente J. Botet Escriba
c71882816c Thread: add missing joinable in scoped_thread #8451 + construction from F, Args.
[SVN r83949]
2013-04-18 06:43:19 +00:00
Vicente J. Botet Escriba
ef5d43fac9 Thread: make unnifor definition of BOOST_PTHREAD_HAS_TIMEDLOCK #8443.
[SVN r83948]
2013-04-18 06:41:42 +00:00
Vicente J. Botet Escriba
3e64214e68 Thread: Added Move traits include file.
[SVN r83906]
2013-04-14 21:34:09 +00:00
Vicente J. Botet Escriba
ed4f0f7b6d Thread: apply patch for #6843.
[SVN r83904]
2013-04-14 21:29:02 +00:00
Vicente J. Botet Escriba
50c18d6274 Detail: Added undef/redef atomic intel macros #6842/#6843.
[SVN r83903]
2013-04-14 21:23:39 +00:00
Vicente J. Botet Escriba
d5cf734a21 Thread: remove noexcept on operations that can unlock the mutex.
[SVN r83902]
2013-04-14 20:31:40 +00:00
Vicente J. Botet Escriba
06d2a11127 Thread: rollback BOOST_THREAD_PROVIDES_ONCE_CXX11 define. Force minwg to use BOOST_THREAD_USE_LIB.
[SVN r83796]
2013-04-07 19:01:22 +00:00
Vicente J. Botet Escriba
528fcbde56 Thread: major rewrite of future::then.
[SVN r83676]
2013-04-01 16:17:05 +00:00
Vicente J. Botet Escriba
a0397315b2 Thread: minor update in future.hpp to rework future::then.
[SVN r83672]
2013-04-01 07:41:32 +00:00
Vicente J. Botet Escriba
a543b918f0 Thread: check for time_points in the past on try_join_until to take care of #8323.
[SVN r83652]
2013-03-30 18:28:29 +00:00
Vicente J. Botet Escriba
619ddf54b9 Thread: remove what() function from future_error to take care of #8337.
[SVN r83649]
2013-03-30 14:36:41 +00:00
Vicente J. Botet Escriba
116c947af9 Thread: replace wait_and_ope by ope in sync_queues and pop by pull.
[SVN r83648]
2013-03-30 14:33:42 +00:00
Vicente J. Botet Escriba
79e1e88f2e Thread: more refactoring on pthread/shared_mutex.hpp.
[SVN r83553]
2013-03-24 23:45:33 +00:00
Vicente J. Botet Escriba
af3b5f3227 Thread: limit dependency on boost/thread/thread.hpp.
[SVN r83552]
2013-03-24 22:05:50 +00:00
Vicente J. Botet Escriba
19bd0d5eba Thread: Added first version of sync_queue.
[SVN r83547]
2013-03-24 18:29:03 +00:00
Vicente J. Botet Escriba
f922fa56e4 Thread: Added assertions on pthread/shared_mutex.hpp; fixed two shared_mutex tests that were wrong.
[SVN r83546]
2013-03-24 17:18:21 +00:00
Vicente J. Botet Escriba
290faf192d Thread: Added first version of sync_bounded_queue.
[SVN r83538]
2013-03-24 12:24:22 +00:00
Vicente J. Botet Escriba
df7fbe085a Thread: Added constexpr to future default constructor; protect code incompatible with MSVC8.
[SVN r83521]
2013-03-22 21:50:20 +00:00
Vicente J. Botet Escriba
c9c46e87b5 Thread: Adapt win32/once.hpp to last changes to invoke..
[SVN r83471]
2013-03-17 08:07:40 +00:00
Vicente J. Botet Escriba
d4e6332eca Thread: add invoke when no variadic templates are available; adapt call_once.
[SVN r83466]
2013-03-16 15:36:21 +00:00
Vicente J. Botet Escriba
80594adcbb Thread: fixed some typos on win32/once.hpp and made use bind when there are some arguments and specialize the algorithm when there are no parameters to avoid errors with bind.
[SVN r83465]
2013-03-16 15:35:10 +00:00
Vicente J. Botet Escriba
4ea14fb9da Thread: rollback one of the changes in [83425].
[SVN r83456]
2013-03-16 08:32:22 +00:00
Vicente J. Botet Escriba
5a22af7639 Thread: force BOOST_THREAD_USES_DATETIME on windows #8198.
[SVN r83426]
2013-03-14 17:23:05 +00:00
Vicente J. Botet Escriba
7b157ab5f4 Thread: Apply patch for #8212.
[SVN r83425]
2013-03-14 17:19:59 +00:00
Vicente J. Botet Escriba
a73425eb00 Thread: use invoke/bind whenever there is atleast one parameter on call_once.
[SVN r83422]
2013-03-13 23:01:49 +00:00