ネッティー非同期モデル

記事には、タスクの使用は、特定の非同期モデルについては、この話を非同期処理時間のかかるタスクを実装することを言いました
基本的な紹介:

1.非同期および同期の相対的な概念非同期プロシージャ・コールを開始するときに、呼び出し側は、すぐに結果を得ることができません。発呼者に通知する呼び出し、ステータス、通知及びコールバックの終了後、実際の組立工程
IO 2.Netty操作が結合、書き込みなど、非同期であり、接続やその他の操作は単純ChannelFuture戻ります
。3.発信者とすぐに結果が、将来、リスナーメカニズムにより取得していない、ユーザーが簡単に取得するためのイニシアチブを取るかのメカニズムを介してIOの営業成績を得ることができ
、非同期モデル4.Netty未来とコールバックの上に構築され、コールバックがコールバックです。終わりには、今後は、その核となるアイデアは、言った:楽しい待ちはリターンに、楽しい方法を仮定し、計算プロセスは非常に時間がかかることが明らかに不適切です。楽しいが、すぐに未来を返すときには、呼び出すことができ、その後の将来の楽しみは、処理方法を監視することができます(つまり、未来リスナーメカニズム)

今後の説明

1.表現して非同期実行結果は、実行の方法により検出することができるなど、このような計算を取得するなど、完全なそれの提供、ある
2.ChannelFutureインターフェースであるリスニングイベントがリスナーに通知するとき、我々は、リスナーを追加することができます

概略図の連鎖:

ここに画像を挿入説明
1.プログラム網状を使用する場合、傍受及び変換は、インバウンドおよびアウトバウンドデータのみコールバックまたは将来の使用に必要とされる、単純に連鎖させるれ、効率的で、かつ再利用可能な共通のコードの製造容易にする
2.nettyをフレームワークの目標は、アプリケーションのコードベースのネットワークからビジネスロジックを作ることです、解放されました

未来リスナーのメカニズム

先ほど作成した将来のオブジェクトは、未完了の状態で、発信者が操作のステータスを取得することができる1. ChannelFutureリターンによって実行される、終了後の動作を実行するリスナー関数を登録する
次の操作が一般的である2
isDoneによって現在の動作方法を決定します完了
完了した場合isSuccessの仕方によっては、現在の操作が成功し伝えるために
getCauseメソッドにより失敗した現在の操作完了した理由を取得するために
isCancelledメソッドによって判断がキャンセルされた現在の操作完了した
ときの動作、addListenerメソッドリスナーで登録することを(isDone方法復帰完了)完了し、指定されたリスナーに通知します。今後のオブジェクトが完了した場合、指定の通知リスナ
特定コードの実装:
ここに画像を挿入説明

要約:

実行スレッドがライブにブロックされます後に操作が完了した知っている、伝統的なブロッキングIO、IO操作と比較すると、非同期処理の利点は、スレッドをブロックするスレッドはありません。原因は、IO操作中に他のプログラムを実行することができ、それは、並行性の高いシナリオの下でより安定になりますそしてより高いスループット。

悪いの学習時間の不足、あまりにも浅い知識は、ご容赦ください。

人々の10種類が世界であり、1は、1つのバイナリを理解していないで、バイナリを理解することです。

公開された71元の記事 ウォン称賛54 ビュー420 000 +

おすすめ

転載: blog.csdn.net/weixin_43326401/article/details/104228911