再帰により同時リクエスト数を制限した Ajax サンプル

Home » Ajax による処理を繰り返し行うためのサンプル » 再帰により同時リクエスト数を制限するサンプル

再帰処理により、クライアントからの同時実行リクエスト数を制限するサンプルです。

構成ファイル

sample3.html

このファイル。
実行ボタンの onclick ハンドラから sample3.js の do_action 関数を呼び出します。

sample3.js

JavaScript ソースコード。
prototype.js によるサンプルと同様に Ajax.Request を使用してリクエストを処理します。
同時実行されるリクエスト数は再帰によりに制限されます。

do_request での引数 n の評価は onSuccess から do_request を呼び出す前に行ってもよいのですが、末尾再帰を強調するため関数の先頭で行っています。 (末尾再帰についてはWikipediaをご覧ください。)
JavaScript が末尾再帰による最適化を行っているかは知りませんが、ひょっとしたらそういう処理系もあるかもしれないのでこのようにしておいた方が良いと思います。

rand.php

XML で乱数を出力するサーバ側のハンドラ。

テストフォーム

Ajax 処理の実行回数を指定し、実行 ボタンを押してください。

: