最近、私はpdf DesigningMTprogramsを読んでいます。これは、オブジェクトがスコープ外になる前に、ユーザーがC++0xdetach()
のクラスのオブジェクトを明示的に呼び出さなければならないことを説明しています。std::thread
呼び出さない場合はstd::terminate()
呼び出され、アプリケーションは停止します。
私は通常boost::thread
、C++でのスレッド化に使用します。boost::thread
私が間違っているが、オブジェクトがスコープから外れると自動的に切り離される場合は、私を訂正してください。
ブーストアプローチはRAIIの原則に従いますが、stdは従わないようです。
これには特別な理由があるかどうか知っていますか?