TeraOmegaNetwork 2.0
<2010年9月>
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

macでVS2010
iPadでVS2010
ミニノートPCでVS2010
C# 3.0 LINQ Sort
ぱられる。ふぉー
Parallel.For
C#4.0 続2 Parallelクラス
C#4.0 続 Parallelクラス
Internet Explorer の検索ボックスを表示しない
2010年度になりました

プログラミング
・C#
・C/C++
・Java
・Visual Basic
・Visual Basic .NET
・色々な言語
・メモ
管理人の落書き
リンク
テンプレート作成支援言語
IEAuto
クラス設計






Web デベロッパー

必要科目
70-536
70-528
70-547



・Sun認定Javaプログラマー(SJC-P 035)
・OracleSilverFaeroe 9i
・UMTP Lv1
・基本情報技術者


・セキュリティスペシャリスト合格
・テンプレート作成支援言語(T言語)を広める事

  お勧め1「テンプレート作成支援言語(T言語)」ver 1.1.1         20010/02/26 更新
テンプレート作成支援言語について
ダウンロードする。

お勧め2「ブラウザ自動操作ツール(IEAuto2009)」ver 1.6.1    20010/03/25 更新
ブラウザ自動操作ツール(IEAuto 2009)について
ダウンロードする。

お勧め3
「データベース更新前更新後比較ツール(DBCMP) Oracle接続可」ver 1.4.0  20010/03/14 新規公開
ダウンロードする。

プログラミング - C#
Parallel.For

C#4.0 続2のParallel.Forについてまとめてみました。


Parallel.Forについて
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
//参考URL:http://msdn.microsoft.com/ja-jp/library/dd460703.aspx
//<long>:戻り値の型をlongと指定。
//ループ開始:0
//ループ終了:lst.Count
//初期値  :() => 0 //delegate() { return 0;} 初期値を返す匿名メソッド。一時的に定義できるメソッド。
//実際の処理:(j, loop, subtotal) => {} //delegate (int j, ParallelLoopState loop, long subtotal){}
//                                      //ループindex, ループをし続けるかなどの情報, 戻り値を引数とする
//                                      //匿名メソッド。その匿名メソッドの処理でループの処理を定義する。
//ループ処理が終わった後に動く処理:(subtotal) => {}
//                                  //スレッドが複数動いた場合、スレッド毎にループ処理が終わり、
//                                  //実際の処理の戻り値が引数として返ってくるので、それを元に最終的な合計を
//                                  //求めている。CPUの論理コアが4つの場合だとこの処理は4回走る。(※確信は無いけど)
//                                  //Interlocked.Addによりsumを計算する場合に同時にsum変数にアクセスしないように
//                                  //計算を行っている。
Parallel.For<long>(0, lst.Count, () => 0, (j, loop, subtotal) => {
    subtotal += lst[j];
    return subtotal;
},
    (subtotal) => Interlocked.Add(ref sum, subtotal) //各々のスレッドで求めたsubtotalをローカル変数sumにセットする。

);


クリックすると拡大します。

・検索キーワード:  C# 4.0

戻る  マイリストへ追加