Dear all,

 I'm new with Boost.Threads; I've just worked with
 Java Threads so far.

 One feature of the Java language is the "synchronized"
 keyword - to make variables, methods, code blocks etc.
 thread-safe. So, when I first came into the situation
 that I needed threads in C++ as well, I thought of a
 way how to reflect that feature into C++.

 It seems to be easy to synchronize variables - see the
 very minimalistic draft below. But what about synchronized
 class methods etc.?

Is it worth to go further into that direction?

 I mean, the Boost.Thread library seems to be designed with
 safety in mind, but is still a little bit low-level.

Are there any efforts to enhance the library further?


- Roland




template<class T> class synchronized
{
public:
  synchronized( T theValue = T() )
    : value( theValue )
  {}

  void set( const T& theValue )
  {
    boost::mutex::scoped_lock lock( mux );
    value = theValue;
  }

  T get() const
  {
    boost::mutex::scoped_lock lock( mux );
    return value;
  }

private:
  T value;
  mutable boost::mutex mux;
};


_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to