This is the mail archive of the
libstdc++-cvs@gcc.gnu.org
mailing list for the libstdc++ project.
r143772 - in /trunk/libstdc++-v3: ChangeLog inc...
- From: redi at gcc dot gnu dot org
- To: libstdc++-cvs at gcc dot gnu dot org
- Date: Thu, 29 Jan 2009 23:24:05 -0000
- Subject: r143772 - in /trunk/libstdc++-v3: ChangeLog inc...
Author: redi
Date: Thu Jan 29 23:24:05 2009
New Revision: 143772
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=143772
Log:
2009-01-29 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/thread: Remove unused headers.
(__thread_data_base): Remove unused mutex and base.
(thread::~thread): Only detach if joinable.
(thread::joinable): Test if thread data ptr is empty.
(thread::_M_thread_data_mutex): Remove.
(thread::_M_get_thread_data): Remove.
(thread::_M_make_thread_data): Remove overload, use make_shared.
(thread::id::id): Make constructor explicit.
* src/thread.cc (thread::join,thread::detach): Throw if not joinable.
(thread::_M_start_thread): Break shared_ptr cycle on error.
(__thread_proxy): Use shared_ptr swap instead of copy and reset.
* testsuite/30_threads/thread/member/4.cc: New.
* testsuite/30_threads/thread/member/5.cc: New.
Added:
trunk/libstdc++-v3/testsuite/30_threads/thread/member/4.cc
trunk/libstdc++-v3/testsuite/30_threads/thread/member/5.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/std/thread
trunk/libstdc++-v3/src/thread.cc