メモリバリアー
マルチスレッドがらみでメモリバリアーを調べていて、_ReadWriteBarrier()なんてものを知ったのですが、Visual C++ .NET 2003からの機能でした。
Visual C++ .NET 2003 の新機能
↓
C++ コンパイラ、C++ 言語、およびリンカ
- _ReadWriteBarrier の組み込みが追加されました。
Visual C++ 6.0でも_ReadWriteBarrier()が使えるようにして欲しいところですが、コンパイラの最適化ルーチンにいくらか手を加える必要があるでしょうから、今更そんな面倒なことしないでしょうねえ……。古いアプリケーションでもありますし……。
おまけ。
「.NET FrameworkのThread.MemoryBarrier」
ITmedia エンタープライズ:特集:スレッドの落とし穴 (4/6)
ここで使ったThread.MemoryBarrierメソッドは、Visual Studio .NET 2003と共に出荷された.NET 1.1の新機能であるため、Visual Studio .NET 2002では使えない。.NET 1.0でも実行可能にする解答は、次のようになる。
こちらも、Visual Studio .NET 2003からですか。