タグ

ブックマーク / ufcpp.wordpress.com (5)

  • async/awaitと同時実行制御

    C# 5.0のasync/awaitを使うと、多くの場面ではシングル スレッド的な動作になるし、多くの場面ではlock不要(結果的に、デッドロックが起こりようなくなる)になったりします。 ただし、「多くの場面で」。「必ず」ではないのがはまりどころ。いくつかの場面では、同時実行制御が必要です(普通にマルチスレッドの平行実行になるので、同時に同じデータにアクセスされる可能性を考慮しないとバグります)。 前提知識 いくつか、C# 5.0世代の非同期処理についての前提知識は、以下のスライド(先月末の.NETラボでの発表)を参考にしてください。 5~12ページ: async/awaitの書き方 17~22ページ: スレッドとそのコスト 24~26ページ: スレッド プール 29~32ページ: I/O完了待ちと非同期API 36~40ページ: UIスレッドとディスパッチャー 41~45ページ: 同期コ

    async/awaitと同時実行制御
    t_a_o
    t_a_o 2012/11/17
  • non-nullable reference type

    何度かこの話だしてるものの。C# に、参照型だけども null が絶対入っていないことを保証する型(non-nullable)はなぜないの?という話。 それなりにしっかりと説明してるブログ記事を見つけたのでリンク: Difficulties with non-nullable types (part 1) Difficulties with non-nullable types (part 2) Difficulties with non-nullable types (part 3) Difficulties with non-nullable types (part 4) 以下、簡単な日語解説。 non-nullable? .NET は元々、値と参照の区別しか持っていなくて、 値型は常に 非 null (non-nullable) 参照型は null を許容(nullable) でし

    non-nullable reference type
  • どうしてこうなった

    ほんと、どうしてこうなったかなぁ。 Oralceの対Google訴訟、プログラミングの将来を危うくしている 二分された世界 JVM と .NET、もろに競合なわけですが。少しレイヤーが違うとか、棲み分けできるポイントがあるならともかく、ほんとに2個あってもしょうがない状態。競争があるのはいいと思うものの、どうせ競争するなら最低ラインの仕様そろった中で性能改善とかで競って欲しく。 でも、後発の .NET だけが悪いわけでもないのは今の DalvikVM の状況を見ての通り(Oracle になってひどくなったわけでもなく、Sun の時代も大概)。このままだと仕様が違う第3の仮想マシン(VM)ができてしまってもおかしくない状況… 個人的な意見として、「もしもの話」で、一番よかっただろう道筋は、2000年前後の訴訟がなくて、Microsoft Java VM が生きている状態。.NET が生まれる

    どうしてこうなった
    t_a_o
    t_a_o 2012/05/05
    Android
  • WinRT に関する誤解

    まあ、ます先に、ダウンロード リンク一覧を Microsoft Visual Studio 11 Developer Preview (ISO) http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=415c1589-a7b1-4b25-93fa-11bb6f29a5be Microsoft Visual Studio 11 Developer Preview (Web インストーラー) http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=99a58e56-fcb2-4264-bce7-3311cf0d1806 Microsoft Visual Studio Team Foundation Server 11 Developer Preview

    WinRT に関する誤解
  • 「プログラミング .NET Framework 第3版」勉強会資料

    6/5日の「プログラミング .NET Framework 第3版」がテーマの勉強会、僕の分の資料を置いておきます。 ちなみに今回、勉強会の内容はアーカイブ配信もされています: 第67回codeseek勉強会&第8回日C#ユーザー会 勉強会 アーカイブ配信 地震で延期したことによって間が空いてしまい、その間にちらほら足していったらすごいページ数になってしまったという。6/5の発表では半分くらい非表示にしてカットしたり(カットしたページの一部はSilverlightを囲む会 in東京 #2 での発表に使っています)。 スライド中でも書いていますが、第3版で追加された第5部「スレッド処理」は、.NET Frameworkに関係なく、Windowsで非同期処理/並列処理するなら読んでおいて損はないかと。 http://rcm-jp.amazon.co.jp/e/cm?t=cunflc-22&o=

    「プログラミング .NET Framework 第3版」勉強会資料
    t_a_o
    t_a_o 2011/06/15
    thread
  • 1