私は少し密集しているかもしれませんが、下の行が何をするのか理解できませんか?
class background_task
{
public:
void operator()() const
{
do_something();
do_something_else();
}
};
background_task f;
std::thread my_thread(f);
クラスの
my_thread
オブジェクトを呼び出すスレッド(という名前)が作成されていることに気付きましたが、クラスの関数が実際に呼び出されるのはいつですか?f
background_task
operator()
background_task
関数演算子のオーバーロードが必要なのはなぜですか?
これがC++ 101または非常に基本的なものであることは理解していますが、まだ理解できないので、C++のそのようなトピックについてさらに学ぶためにどの本を参照すればよいでしょうか.