1

タイトルが示すように、スレッドと非ブロッキング同期を操作するときに知っておくべきコンパイラ、CLR、またはCPUの最適化は何ですか?

物事を壊す可能性のある効率を改善するための命令の並べ替え、および変数が他のスレッドにすぐに表示されないようにするキャッシュの最適化について少し読みました[0]が、他に(確かにあります)知っておく必要がありますか?

おすすめの読書/ブログ/記事などへのリンクは大歓迎です。

ありがとう、エギル。

更新:ジョー・ダフィーのブログ投稿へのジョンズのリンクのおかげで、私はあなたたちと共有すると思ったもっとたくさんの素晴らしい情報を見つけました:

4

2 に答える 2

1

基本的に、.NETメモリモデルについて知っておく必要があります。現在実行されている最適化を無視します-モデルへのコード。

出発点として、JoeDuffyによるこのブログ投稿をお勧めします。

また、独自のロックフリーコードをロールしないことをお勧めします。人間にとっては難しすぎる、IMO。正しいことを行うParallelExtensions(.NET 4.0)のようなフレームワークを使用してください。

于 2009-12-04T17:13:45.907 に答える
1

Joe Duffyは、「 Windowsでの並行プログラミング」と呼ばれる優れた本を持っています。これは、Windowsでの並行性(ロックフリープログラミングを含む)に興味がある場合に必ず読むことをお勧めします。

于 2009-12-04T17:14:08.573 に答える