Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r62633 - in trunk/boost/thread: detail pthread win32
From: anthony_at_[hidden]
Date: 2010-06-09 02:58:36


Author: anthonyw
Date: 2010-06-09 02:58:35 EDT (Wed, 09 Jun 2010)
New Revision: 62633
URL: http://svn.boost.org/trac/boost/changeset/62633

Log:
Replace use of noncopyable with private copy operations, issue #3244
Text files modified:
   trunk/boost/thread/detail/thread_group.hpp | 7 +++++--
   trunk/boost/thread/pthread/mutex.hpp | 11 +++++++----
   trunk/boost/thread/pthread/recursive_mutex.hpp | 11 +++++++----
   trunk/boost/thread/win32/recursive_mutex.hpp | 8 ++++++--
   trunk/boost/thread/win32/shared_mutex.hpp | 6 ++++--
   5 files changed, 29 insertions(+), 14 deletions(-)

Modified: trunk/boost/thread/detail/thread_group.hpp
==============================================================================
--- trunk/boost/thread/detail/thread_group.hpp (original)
+++ trunk/boost/thread/detail/thread_group.hpp 2010-06-09 02:58:35 EDT (Wed, 09 Jun 2010)
@@ -18,10 +18,13 @@
 
 namespace boost
 {
- class thread_group:
- private noncopyable
+ class thread_group
     {
+ private:
+ thread_group(thread_group const&);
+ thread_group& operator=(thread_group const&);
     public:
+ thread_group() {}
         ~thread_group()
         {
             for(std::list<thread*>::iterator it=threads.begin(),end=threads.end();

Modified: trunk/boost/thread/pthread/mutex.hpp
==============================================================================
--- trunk/boost/thread/pthread/mutex.hpp (original)
+++ trunk/boost/thread/pthread/mutex.hpp 2010-06-09 02:58:35 EDT (Wed, 09 Jun 2010)
@@ -27,10 +27,11 @@
 
 namespace boost
 {
- class mutex:
- boost::noncopyable
+ class mutex
     {
     private:
+ mutex(mutex const&);
+ mutex& operator=(mutex const&);
         pthread_mutex_t m;
     public:
         mutex()
@@ -83,10 +84,12 @@
 
     typedef mutex try_mutex;
 
- class timed_mutex:
- boost::noncopyable
+ class timed_mutex
     {
     private:
+ timed_mutex(timed_mutex const&);
+ timed_mutex& operator=(timed_mutex const&);
+ private:
         pthread_mutex_t m;
 #ifndef BOOST_PTHREAD_HAS_TIMEDLOCK
         pthread_cond_t cond;

Modified: trunk/boost/thread/pthread/recursive_mutex.hpp
==============================================================================
--- trunk/boost/thread/pthread/recursive_mutex.hpp (original)
+++ trunk/boost/thread/pthread/recursive_mutex.hpp 2010-06-09 02:58:35 EDT (Wed, 09 Jun 2010)
@@ -30,10 +30,11 @@
 
 namespace boost
 {
- class recursive_mutex:
- boost::noncopyable
+ class recursive_mutex
     {
     private:
+ recursive_mutex(recursive_mutex const&);
+ recursive_mutex& operator=(recursive_mutex const&);
         pthread_mutex_t m;
     public:
         recursive_mutex()
@@ -92,10 +93,12 @@
 
     typedef recursive_mutex recursive_try_mutex;
 
- class recursive_timed_mutex:
- boost::noncopyable
+ class recursive_timed_mutex
     {
     private:
+ recursive_timed_mutex(recursive_timed_mutex const&);
+ recursive_timed_mutex& operator=(recursive_timed_mutex const&);
+ private:
         pthread_mutex_t m;
 #ifndef BOOST_PTHREAD_HAS_TIMEDLOCK
         pthread_cond_t cond;

Modified: trunk/boost/thread/win32/recursive_mutex.hpp
==============================================================================
--- trunk/boost/thread/win32/recursive_mutex.hpp (original)
+++ trunk/boost/thread/win32/recursive_mutex.hpp 2010-06-09 02:58:35 EDT (Wed, 09 Jun 2010)
@@ -20,9 +20,11 @@
 namespace boost
 {
     class recursive_mutex:
- boost::noncopyable,
         public ::boost::detail::basic_recursive_mutex
     {
+ private:
+ recursive_mutex(recursive_mutex const&);
+ recursive_mutex& operator=(recursive_mutex const&);
     public:
         recursive_mutex()
         {
@@ -40,9 +42,11 @@
     typedef recursive_mutex recursive_try_mutex;
 
     class recursive_timed_mutex:
- boost::noncopyable,
         public ::boost::detail::basic_recursive_timed_mutex
     {
+ private:
+ recursive_timed_mutex(recursive_timed_mutex const&);
+ recursive_timed_mutex& operator=(recursive_timed_mutex const&);
     public:
         recursive_timed_mutex()
         {

Modified: trunk/boost/thread/win32/shared_mutex.hpp
==============================================================================
--- trunk/boost/thread/win32/shared_mutex.hpp (original)
+++ trunk/boost/thread/win32/shared_mutex.hpp 2010-06-09 02:58:35 EDT (Wed, 09 Jun 2010)
@@ -19,10 +19,12 @@
 
 namespace boost
 {
- class shared_mutex:
- private boost::noncopyable
+ class shared_mutex
     {
     private:
+ shared_mutex(shared_mutex const&);
+ shared_mutex& operator=(shared_mutex const&);
+ private:
         struct state_data
         {
             unsigned shared_count:11,


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk