## 7 MultiCall オブジェクト

バージョン 2.4 で 新たに追加 された仕様です。

遠隔のサーバに対する複数の呼び出しをひとつのリクエストにカプセル化 する方法は、http://www.xmlrpc.com/discuss/msgReader%241208 で 示されています。

クラス `MultiCall`( | server)

  巨大な (boxcar) メソッド呼び出しに使えるオブジェクトを作成します。 server には最終的に呼び出しを行う対象を指定します。 作成した MultiCall オブジェクトを使って呼び出しを行うと、 即座にNone を返し、呼び出したい手続き名とパラメタに保存する だけに留まります。 オブジェクト自体を呼び出すと、それまでに保存しておいたすべての 呼び出しを単一の`system.multicall` リクエストの形で伝送します。 呼び出し結果はジェネレータになります。このジェネレータにわたって イテレーションを行うと、個々の呼び出し結果を返します。

以下にこのクラスの使い方を示します。

    multicall = MultiCall(server_proxy)
    multicall.add(2,3)
    multicall.get_address("Guido")
    add_result, address = multicall()