yohhoyの日記

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

2013-01-01から1ヶ月間の記事一覧

Cストリーム入出力関数とスレッド安全性

C標準ライブラリの<stdio.h>ヘッダで提供されるストリーム入出力関数において、複数スレッドから同時に対象ストリーム入出力操作を行ったときの振る舞い(スレッド安全性)に関するメモ。まとめ: C99以前:POSIX準拠システムならばスレッド安全である。(それ以外は処</stdio.h>…

ミューテックスのロック状態を取得

C++

C++11標準ライブラリ提供の ミューテックス および ロックオブジェクト とロック状態の取得について。std::mutexなどのミューテックス型は、自スレッドでロック獲得済みかを問合せるインタフェースを提供しない。代わりにstd::unique_lockクラステンプレート…

std::functionの戻り値型に関する制約条件

C++

C++11標準ライブラリ提供のstd::functionクラステンプレートにおいて、同functionオブジェクトで保持する呼び出し可能オブジェクト(callable object)の戻り値型に関するメモ。2015-09-27追記:この制限は次期標準規格C++1z(C++17)にて修正される。id:yohhoy:…

std::unique_ptrと添字アクセス

C++

C++11標準ライブラリ提供のstd::unique_ptrクラステンプレートでは、第1テンプレート引数に配列型T[]を指定したときのみ添字アクセス([]演算子)を利用可能となる。ただし、この部分特殊化では*演算子と->演算子は提供されない。 #include <memory> { std::unique_p</memory>…