yohhoyの日記(別館)

もうちょい長めの技術的メモをしていきたい日記

C

条件変数 Step-by-Step入門

多くのプログラミング言語では、マルチスレッド処理向け同期プリミティブとして「ミューテックス(mutex)」と「条件変数(condition variable)」を提供しています*1 *2。ミューテックスは排他制御機構として有名ですし、その動作もロック(lock)/アンロック(un…

gistにソースコードを放っておいたらOSSプロジェクトで活用されていた件

C

タイトル通り。プログラミング言語Cの最新規格C11で採用されたスレッドサポートのエミュレーションライブラリをgistに放置していたら、汎用OpenGL実装The Mesa 3D Graphics Libraryに取り込まれました(2014年2月現在のGit版として)。2014-05-07追記:MesaL…

volatile教、あるいはvolatile狂

かつてのMicrosoft Visual Studio .NET 2003のC/C++コンパイラ(MSVC7.1)には、「volatile変数にオレオレ定義の意味を与えて最適化を行う」というアグレッシブすぎるオプションが存在したという昔話。 どんなもの? このオプションでは、volatileキーワードに…

OLE Drag & Dropを実装する

この記事は2001年頃に書いた文章をそのまま転記し、はてなブログ用に体裁を整えたものです。Windows2000+Win32 SDK+C言語を前提としており、2012年現在では内容が陳腐化している箇所もあります。(当時の)ソースコードはこちら: https://gist.github.com…