タグ付けされた質問 「packaged-task」

3
packaged_taskとasyncの違いは何ですか
C ++ 11のスレッドモデルで作業しているときに、 std::packaged_task<int(int,int)> task([](int a, int b) { return a + b; }); auto f = task.get_future(); task(2,3); std::cout << f.get() << '\n'; そして auto f = std::async(std::launch::async, [](int a, int b) { return a + b; }, 2, 3); std::cout << f.get() << '\n'; まったく同じことをしているようです。で実行std::asyncした場合、大きな違いがある可能性があることは理解していますが、std::launch::deferredこの場合は違いますか? これらの2つのアプローチの違いは何ですか?さらに重要なことに、どのユースケースでどちらを使用するべきですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.