タグ

asyncに関するimanaka99のブックマーク (2)

  • [C#]async/awaitの使い方メモ、その1。 | Kimux.Net

    今後の.NET開発では必須スキルか。 .NETでの非同期処理の書き方があまりにも色々ありすぎて覚えるのも大変。でも、async/awaitを使用した非同期処理は今後重要なキーワードとなってきそうです。 参考 連載:C# 5.0&VB 11.0新機能「async/await非同期メソッド」入門 http://www.atmarkit.co.jp/ait/subtop/features/da/ap_masterasync_index.html ボタンをクリックすると1秒間隔でラベルの文字が変更するプログラムを書く。 フォームのボタンをクリックすると1秒間隔で10回、ラベルの文字が変更するプログラムを考えます。 非同期処理を使わない例。 非同期処理の効用を知るために、非同期処理を使わないで処理を書いてみます。 private void button1_Click(object sender, E

  • 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と同時実行制御
  • 1