Sign up for a 50% discount just::thread FCD edition
Wednesday, 07 April 2010
I'm in the process of updating our C++0x thread library for VS2008, VC10, g++ 4.3 and g++ 4.4 to incorporate the changes to the C++0x thread library voted into the C++0x FCD. I'll be writing a blog post with more details in due course, but the big changes are:
- Functions for postponing notification of threads waiting on a
std::future
until the thread that set the value on thestd::promise
or ran thestd::packaged_task
has exited. - A similar facility for notifying
a
std::condition_variable
at thread exit. - Defined behaviour for
the
wait_for()
andwait_until()
member functions ofstd::future
when used withstd::async
and a launch policy ofstd::launch::sync
. - Changes to the initialization of atomic variables.
Existing customers will get the new version as a free upgrade, but
the rest of you can get a 50% discount if you subscribe to
my blog by email. Just fill in your name and email address
in the form below and be sure to click the confirmation link. You'll
then receive future blog posts by email, along with an announcement
and exclusive discount for the FCD edition
of just::thread
when it's released.
If you're reading this via RSS and your reader doesn't show you the form or doesn't allow you to submit your details, then please go to the web version of this blog entry.
If you've already subscribed by email then you don't need to subscribe again, you'll automatically receive the discount code.
Posted by Anthony Williams
[/ news /] permanent link
Tags: concurrency, threading, C++0x, just::thread
Stumble It! | Submit to Reddit | Submit to DZone
If you liked this post, why not subscribe to the RSS feed or Follow me on Twitter? You can also subscribe to this blog by email using the form on the left.
Design and Content Copyright © 2005-2024 Just Software Solutions Ltd. All rights reserved. | Privacy Policy
2 Comments
What are the differences between just::thread and boost::thread? Do you expect boost::thread to move towards C++0x compliance?
Hi Eric,
There are several differences between just::thread and boost.thread. Firstly, there are some features and facilities in just::thread that are not in boost.thread:
* std::async
* std::atomic
* The std::chrono time interface
There are also a few differences in the functionality of the various components as just::thread has been tracking the C++0x draft, and with the upcoming release will match the FCD. The "notify at thread exit" facilities are among those.
Boost.thread supports thread interruption, which is not in C++0x, and so not in just::thread.
just::thread also features a deadlock detection mode which takes stack traces at crucial points so if a deadlock occurs then the library will trap into the debugger and/or display stack traces of all threads involved in the deadlock including where the relevant locks were acquired.
just::thread also takes full advantage of the C++0x facilities in the supported compilers, whereas boost.thread lags behind in some areas. just::thread is also better optimized because it is targeted at a few specific compilers and platforms rather than aiming for maximum portability.
Over time, boost.thread will move towards C++0x compliance. My personal energies are going to focus on updating just::thread in preference to boost.thread, but now the FCD is out the interface should be more stable and I might therefore have time to update boost.thread.