2
0
mirror of https://github.com/boostorg/thread.git synced 2026-02-11 00:02:12 +00:00
Commit Graph

327 Commits

Author SHA1 Message Date
Roland Schwarz
ad33e705b2 platform split
[SVN r33667]
2006-04-11 19:42:57 +00:00
Roland Schwarz
a639fe4dbe platform split
[SVN r33666]
2006-04-11 19:35:10 +00:00
Roland Schwarz
8806d38775 platform split
[SVN r33665]
2006-04-11 19:24:06 +00:00
Anthony Williams
ba49aaa0f7 Added "unspecified" read-write sync policy, for use in read-write mutex tests
[SVN r33564]
2006-04-06 09:13:22 +00:00
Anthony Williams
1a92100467 Don't make qualified calls where we don't have to
[SVN r33556]
2006-04-05 11:46:12 +00:00
Anthony Williams
ef6dc83fa8 Use BOOST_INTERLOCKED_EXCHANGE_ADD in preference to BOOST_INTERLOCKED_COMPARE_EXCHANGE, since this should be faster
[SVN r33555]
2006-04-05 11:45:11 +00:00
Anthony Williams
48f550d403 Updated copyright
[SVN r33554]
2006-04-05 11:43:07 +00:00
Anthony Williams
3c9be720b8 Simplified code by extracting create_once_mutex, so the essence of call_once is clarified.
Use boost::detail::interlocked_read rather than BOOST_INTERLOCKED_COMPARE_EXCHANGE to check flag value


[SVN r33553]
2006-04-05 11:42:07 +00:00
Anthony Williams
b3ba8802bf Better express intent in structure of call_once
[SVN r33457]
2006-03-23 16:11:52 +00:00
Anthony Williams
0fddf00c8f Removed using declaration for get_active_count, since we don't need it, and VC6 moans about it
[SVN r33411]
2006-03-20 22:08:33 +00:00
Anthony Williams
bb7976f666 Tidied up access for condition members
[SVN r33345]
2006-03-14 23:43:23 +00:00
Anthony Williams
3ad4fb38b5 Eliminated redundant #ifdef parts
[SVN r33335]
2006-03-13 17:00:46 +00:00
Anthony Williams
deaccce853 Corrected #ifdefs for WINTHREADS
[SVN r33331]
2006-03-13 10:07:49 +00:00
Anthony Williams
6aabcaac5c Added appropriate support for QueueUserAPC condition implementation
[SVN r33330]
2006-03-13 08:29:17 +00:00
Anthony Williams
d07407306f Added boost::detail::get_xtime_sentinel, which always yields 2^32-1 (INFINITE) seconds until expiry
[SVN r33329]
2006-03-13 08:14:16 +00:00
Anthony Williams
4231423773 Reduced duplication by extracting do_notify_one
[SVN r33304]
2006-03-10 10:54:27 +00:00
Anthony Williams
46b66d5268 Reduced scope of locking
[SVN r33303]
2006-03-10 10:33:37 +00:00
Anthony Williams
9c439a73db Inlined barrier code, new implementation of condition based on QueueUserAPC. Blocks all waits and notifies whilst notifying.
[SVN r33302]
2006-03-10 10:07:01 +00:00
Anthony Williams
cdd57f50ef Added recursive_timed_mutex
[SVN r33279]
2006-03-09 11:13:29 +00:00
Anthony Williams
8c2ded3235 Win32 implementation of boost::timed_mutex
[SVN r33272]
2006-03-08 22:24:52 +00:00
Anthony Williams
d3b590f213 Assert rather than throw when using checked mutexes
[SVN r33231]
2006-03-06 09:47:09 +00:00
Anthony Williams
7fcdd5d9e2 Added basic_checked_mutex, and make use of it dependent on BOOST_USE_CHECKED_MUTEX
[SVN r33208]
2006-03-03 09:35:41 +00:00
Anthony Williams
9ceee4b030 New implementations of mutex and recursive mutex for win32
[SVN r33172]
2006-02-28 11:27:19 +00:00
Anthony Williams
50f8f34ab8 Simplified wait functions
[SVN r32393]
2006-01-24 11:24:00 +00:00
Anthony Williams
d76e67ffe2 Updated tests, to ensure unblocked_count is guarded by mutex when reading, and added new test for unblocking only one writer
[SVN r31627]
2005-11-12 10:21:39 +00:00
Anthony Williams
617729f2ae Added new test for unblocking all readers to read_write_mutex code. Added necessary implementation.
[SVN r31122]
2005-09-26 07:09:09 +00:00
Anthony Williams
e8363511d0 Moved BOOST_INTERLOCKED_READ stuff into its own header
[SVN r31098]
2005-09-23 17:24:29 +00:00
Anthony Williams
4749f47f00 Verify that only one writer permitted at once
[SVN r31064]
2005-09-20 22:09:49 +00:00
Anthony Williams
07af8a5605 Removed duplication between reader_thread and writer_thread into a template locking_thread
[SVN r31063]
2005-09-20 21:51:02 +00:00
Anthony Williams
cc89b8d2c6 A locked reader blocks a waiting writer
[SVN r31062]
2005-09-20 21:42:45 +00:00
Anthony Williams
946d45ee70 Added brute force test for multiple readers
[SVN r31061]
2005-09-20 21:20:31 +00:00
Anthony Williams
8a3b5145ac reverted QueueUserAPC changes
[SVN r31052]
2005-09-20 07:27:35 +00:00
Anthony Williams
1af9fb7267 Wake up threads using QueueUserAPC rather than triggering the semaphore.
[SVN r31047]
2005-09-19 22:31:21 +00:00
Anthony Williams
6fe2e36fb0 Put a mutex around the increment in init_once_value, to ensure that if two threads call init_once_value, the increment is done
correctly.


[SVN r31046]
2005-09-19 21:09:14 +00:00
Anthony Williams
e5ada85386 Extended stress test: 100 threads, loop 100 times on same thread.
[SVN r31045]
2005-09-19 20:59:49 +00:00
Anthony Williams
a9760cd2e6 Added test to verify that threads block on a mutex, and only one waiting thread is released when the mutex is unlocked.
[SVN r31040]
2005-09-19 15:11:41 +00:00
Anthony Williams
3e0ce8d25a Added a looping test to check for cross-thread sync problems
[SVN r31016]
2005-09-17 22:20:35 +00:00
Anthony Williams
7d59bbbad5 Set semaphore handle back to NULL on destruction
[SVN r31011]
2005-09-16 13:58:44 +00:00
Anthony Williams
c7a85f366c New read_write_mutex implementation for win32. No try/timed varieties, and no support for read/write priority policies.
[SVN r30994]
2005-09-15 10:47:29 +00:00
Anthony Williams
8b3773f157 Trimmed included headers
[SVN r30986]
2005-09-14 15:44:28 +00:00
Anthony Williams
cb27585fa2 Added new implementation of timed_mutex for win32
[SVN r30985]
2005-09-14 15:20:24 +00:00
Anthony Williams
d3ee1b804a Added new implementation of timed_mutex for win32
[SVN r30984]
2005-09-14 15:10:41 +00:00
Anthony Williams
48ff760e18 Remove references to WINTHREADS from the generic code, as windows threads handled in separate header
[SVN r30982]
2005-09-14 12:49:52 +00:00
Anthony Williams
ba0bdc6489 Use lightweight_mutex for mutex impl. Added basic condition implementation.
[SVN r30981]
2005-09-14 12:43:02 +00:00
Anthony Williams
953461904c Added licence text
[SVN r30979]
2005-09-14 10:44:27 +00:00
Anthony Williams
c956bc9ad7 Moved lightweight_mutex_win32.hpp and mutex_win32.hpp into boost source tree
[SVN r30978]
2005-09-14 10:35:12 +00:00
Anthony Williams
91d88bb24a Added lightweight_mutex_win32.hpp
[SVN r30977]
2005-09-14 10:18:33 +00:00
nobody
545a0f5c86 This commit was manufactured by cvs2svn to create branch
'thread_rewrite'.

[SVN r30953]
2005-09-13 14:20:32 +00:00
Anthony Williams
64b5b67661 Updated thread primitives to include semaphore functions
[SVN r30952]
2005-09-13 14:20:31 +00:00
Anthony Williams
b6f0ec7fd9 Moved win32 thread sync primitives to their own file
[SVN r30947]
2005-09-13 13:48:01 +00:00