非同期呼出しパターン
非同期呼出しですが、
- 別スレッドに仕事を依頼しておしまい。
ってのならいいのですが、しぱしば続きの処理が必要になります。 Web API を呼んで、結果を使わないなんて、ないですからね。 (まあ、クラウドにデータをあげる時は「結果」なんて「ない」気もしますが、でも「成功したかどうか」は欲しいですよね。)
ってことで、今回は二つのパターンを紹介します。
-
Future: 別スレッドに仕事(タスク)を依頼して、あとで結果を回収して続きを実行
- タスクを依頼した後は、自分は別のことをしたり、別のタスクを依頼して OK
- タスクの終了確認をしたり、結果を取り出すための「チケット」を Future といいます。
-
Callback: 仕事を依頼する際に、終わったら実行して欲しい処理 (callback) も登録する
- 自分では続きの処理をせず、仕事完了時に勝手に callback が実行される