yohhoyの日記

技術的メモをしていきたい日記

gcc 4.6.2@MacではC++11標準スレッドを利用不可

Mac OS Xgcc 4.6.2では、C++標準ライブラリのうちスレッド関連機能を利用できない。

同環境下ではマクロ_GLIBCXX_HAS_GTHREADSが定義されないため、下記の標準ヘッダが提供する機能を利用できない。MacOS XのPThreadがタイムアウト付き待機関数を正しく実装していないのが原因とのこと。

  • <thread>
  • <mutex>
  • <condition_variable>
  • <future>

なお、gcc 4.7-20120121(experimental)ではタイムアウト付きmutex以外は利用できることを確認。

関連URL