Linux は私にとって新しいプラットフォームです。私は何年もの間、Windows で c++ を使用してコーディングしており、そのプラットフォームでのマルチスレッドに慣れてきました。
Linux プラットフォームで C++ を学ぶ必要がある時期に、C++11 が登場しました。
Linux はほとんどの部分で pthreads を使用しているようです。boost::threads もあり、QT にも独自のスレッドがあります。しかし、C++11 には、スレッドを実行するためのまったく新しい (クロス プラットフォームおよび C++ 標準) 方法である std::thread が付属しています。
だから私は pthreads と std::threads を学ばなければならないと思います。最終的には、std::thread の方が重要に思えますが、そこには多くのレガシー コードがあるため、両方を知る必要があります。
Windows でのスレッド同期の場合、WaitForMultipleObjectsを使用して、いくつかのタスクが完了するのを待ってから、さらに作業を続けます。
pthread にも同様の同期メカニズムはありますか? std::スレッド?
私はpthread_joinを見てきましたが、一度に 1 つのスレッドだけを待機する機能があるようです。別の pthread 呼び出しが欠落している可能性がありますか?