Hey hey,
using boost 1.78 from the Archlinux repository, using the thread constructor
with
boost::thread::attributes
as first argument fails to compile.
The relevant code from the small test program is this:
void work(bool& done)
// simple main function for the thread
int main()
{
bool done = false;
boost::thread::attributes attr;
// all changes commented out in the program
boost::thread th1(attr, work, std::ref(done));
// some code, sleep and set done to true
th1.join();
return 0;
}
g++ 11.2.0 reports the following error:
In file included from /usr/include/boost/thread/detail/thread.hpp:33,
from /usr/include/boost/thread/thread_only.hpp:22,
from /usr/include/boost/thread/thread.hpp:12,
from thread_prio.cpp:1:
/usr/include/boost/bind/bind.hpp: In instantiation of 'void boost::_bi::list2::operator()(boost::_bi::type<void>, F&, A&, int) [with F = boost::thread_attributes; A = boost::_bi::list0; A1 = boost::_bi::value; A2 = boost::_bi::value]':
/usr/include/boost/bind/bind.hpp:1273:18: required from 'boost::_bi::bind_t::result_type boost::_bi::bind_t::operator()() [with R = void; F = boost::thread_attributes; L = boost::_bi::list2, boost::_bi::value >; boost::_bi::bind_t::result_type = void]'
/usr/include/boost/thread/detail/thread.hpp:120:18: required from 'void boost::detail::thread_data<F>::run() [with F = boost::_bi::bind_t, boost::_bi::value > >]'
/usr/include/boost/thread/detail/thread.hpp:118:18: required from here
/usr/include/boost/bind/bind.hpp:298:35: error: no match for call to '(boost::thread_attributes) (int (*&)(bool&), std::reference_wrapper<bool>&)'
298 | unwrapper<F>::unwrap(f, 0)(a[base_type::a1_], a[base_type::a2_]);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The syntax is based on this part of the manual:
https://www.boost.org/doc/libs/1_79_0/doc/html/thread/thread_management.html...
Is that perhaps a feature only introduced in version 1.79 of the Boost
libraries?
Best wishes and thanks for any pointers,
Jeanette
--
* Website: http://juliencoder.de - for summer is a state of sound
* Youtube: https://www.youtube.com/channel/UCMS4rfGrTwz8W7jhC1Jnv7g
* Audiobombs: https://www.audiobombs.com/users/jeanette_c
* GitHub: https://github.com/jeanette-c
Don't care about money
It doesn't give me half the thrill <3
(Britney Spears)