タグ

ブックマーク / xin9le.hatenablog.jp (2)

  • TPL入門 (10) - タスクの継続 - xin9le.net

    あるタスクが完了したあと、連続して別のタスクを実行したい場合があります。このとき、まず思い付くのは「最初に実行したタスクAを待機して、それから別のタスクBを開始する」でしょう。しかし、これでは結局呼び出し元スレッドをブロックすることになり、最初のタスクAが呼び出し元スレッドと並列に実行されている意味がなくなります。長い処理が行われる場合でもUIスレッドをブロックすることなく処理を進めることは、ユーザー体験の重要な項目のひとつです。そこで今回は、呼び出し元スレッドをブロックすることなく、タスクの完了とともに別のタスクを連続して実行する方法を紹介します。 継続実行 タスクを継続して実行するには、TaskクラスのContinueWithメソッドを利用します。次のサンプルを見てください。 using System; using System.Linq; using System.Threading

    TPL入門 (10) - タスクの継続 - xin9le.net
    rby
    rby 2016/12/20
  • Rx入門 - xin9le.net

    非同期/イベント/時間に関する処理を LINQ の形式で簡潔かつ宣言的に記述することができるライブラリ、Reactive Extensions についての連載インデックス インデックス はじめに オブザーバーパターン Push型とPull型 IObserver<T>の省略 Subject<T>の利用 Subject<T>の亜種 IObservable<T>の生成 LINQスタイルでの記述 Where/Selectの自作 時間のシーケンス化 イベントのシーケンス化 非同期処理のシーケンス化 HotとCold Cold to Hot変換 スケジューラの利用 おわりに 落ち穂拾い 入力文字の遅延表示 効率的な表示更新 マウス位置のトラッキング Drag & Dropでの落書き Webの画像をスライド表示 TwitterのTimelineを表示 メソッドチェイン中の例外 まとめてDispose デ

    Rx入門 - xin9le.net
  • 1