%threads.entities; ]>
Configuration &Boost.Threads; uses several configuration macros in <boost/config.hpp>, as well as configuration macros meant to be supplied by the application. These macros are documented here.
Library Defined Public Macros These macros are defined by &Boost.Threads; but are expected to be used by application code. Macro Meaning BOOST_HAS_THREADS Indicates that threading support is available. This means both that there is a platform specific implementation for &Boost.Threads; and that threading support has been enabled in a platform specific manner. For instance, on the Win32 platform there's an implementation for &Boost.Threads; but unless the program is compiled against one of the multithreading runtimes (often determined by the compiler predefining the macro _MT) the BOOST_HAS_THREADS macro remains undefined.
Library Defined Implementation Macros These macros are defined by &Boost.Threads; and are implementation details of interest only to implementors. Macro Meaning BOOST_HAS_WINTHREADS Indicates that the platform has the Microsoft Win32 threading libraries, and that they should be used to implement &Boost.Threads;. BOOST_HAS_PTHREADS Indicates that the platform has the POSIX pthreads libraries, and that they should be used to implement &Boost.Threads;. BOOST_HAS_FTIME Indicates that the implementation should use GetSystemTimeAsFileTime() and the FILETIME type to calculate the current time. This is an implementation detail used by boost::detail::getcurtime(). BOOST_HAS_GETTTIMEOFDAY Indicates that the implementation should use gettimeofday() to calculate the current time. This is an implementation detail used by boost::detail::getcurtime().