C++11標準ライブラリとBoost.Threadライブラリ(Boost 1.48.0)に含まれる、threadオブジェクトのデストラクタの振る舞いと例外安全に関するメモ。 2020-12-02追記:C++2a(C++20)標準ライブラリでは、デストラクタで自動的にjoinを呼び出すstd::jthreadが追加される。std::thread動作はC++11時点と同一。 2013-02-05追記:Boost.Thread 1.50.0〜1.56.0では記事内容に関する破壊的変更が行われる。id:yohhoy:20120206 も参照のこと。 std::threadとboost::threadのデストラクタは、それぞれ下記の動作を行う。C++0xドラフト段階ではstd::threadもboost::threadと同じ動作仕様だったが、N2802の指摘をうけてC++11標準ライブラリの仕様に変