Boost logo

Boost :

From: William Kempf (williamkempf_at_[hidden])
Date: 2001-09-06 15:37:48

From: "Peter Dimov" <pdimov_at_[hidden]>
>I included mutex.hpp and tss.hpp. This forced me to add mutex.cpp, tss.cpp,
>once.cpp, xtime.cpp to the project, which is reasonable. However I also
>needed thread.cpp because of the out-of-line constructors for the exception
>classes (lock_error and thread_resource_error) that also dragged in
>condition.cpp and whatnot.
>I think that the exception class constructors should be either inline or in
>a separate exception.cpp.

True enough. Originally there was no exceptions.hpp, with them instead
being in thread.hpp. During porting I had someone split them out into
exceptions.hpp and neither of us thought to move the source as well. I'll
address this later.

>BTW why doesn't boost::mutex use a critical section on win32?

To avoid having to either include the windows headers in mutex.hpp or
require dynamic allocation internally. During development I was provided
with research that showed that critical sections often actually result in
worse performance than mutexes (surprised me), so it was easier just to
implement using a Win32 mutex.

Bill Kempf

Get your FREE download of MSN Explorer at

Boost list run by bdawes at, gregod at, cpdaniel at, john at