「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>リッチクライアント対応フレームワーク]] *目次 [#oc9f65fe] #contents *概要 [#tf551459] -非同期化フレームワークは、~ APM(Asynchronous Programming Model)、~ EAP(Event-based Asynchronous Pattern)に分類されるパターン。 --主スレッドから副スレッドを使用して非同期呼び出しを行う。 --副スレッド(非同期スレッド)から結果表示(UI更新)を行う。 --非同期呼び出しの結果はControl.Invoke、Dispatcher.Invoke のメカニズムにより~ Windowsメッセージングキューを使用して主スレッド経由で画面に反映される。 -これらの非同期化フレームワークは、 3層C/S方式と相性が良く、 --Windows Forms、WPF / XBAPの双方に対応している。 --GUIからのサーバ呼出に利用できる(例えば、OpenTP1、Java Webサービスなど)。 *[[async/await>https://techinfoofmicrosofttech.osscons.jp/index.php?async%2Fawait]]との比較 [#j59c63ec] -[[async/await>https://techinfoofmicrosofttech.osscons.jp/index.php?async%2Fawait]]は、 --TAP(Task-based Asynchronous Pattern)に分類されるパターン。 --Taskを返す非同期メソッドを使用する場合は、async/awaitを使用する。 -非同期呼出フレームワークは、async/awaitと比べ、 --問題発生時に、デバッグがし易い。 --また、非同期処理側のスレッド数を厳密に制御できる。 >などの利点がある。 必要に応じて、選択的に使用すると良い。 *SlideShare [#te09604e] -リッチクライアント対応フレームワーク~ http://www.slideshare.net/daisukenishino/open-0150/21 #ref(rc_fx_s.png,left,nowrap,非同期呼出フレームワーク)