非同期ストレージ

非同期ストレージでは、COM 構造化ストレージの仕様が強化され、インターネットなどの待機時間の長い低速リンク ネットワークでのストレージ オブジェクトの非同期ダウンロードがサポートされます。 非同期ストレージを使用すると、複合ファイルを使用する新規アプリケーションとレガシ アプリケーションの両方で、既存のインターネット プロトコルを使用してアクセスしたときにコンテンツを効率的にレンダリングできます。 World Wide Web サーバーに対する 1 つの要求によって、Web ページ内に含まれる入れ子になったオブジェクトのダウンロードがトリガーされるため、各オブジェクトを個別に要求する必要がなくなります。 非同期のダウンロードとアクセスのメカニズムを使用すると、すべてのデータを受信する前に、アプリケーションでデータの最初のページをレンダリングできます。 ページの要素が使用可能になる正確な順序は、Web パブリッシャーによって指定でき、ネットワーク トポロジとサーバーの可用性のランダムな要因に依存しません。

非同期ストレージは非同期モニカーと連携して、完全な非同期バインディング動作を提供します。 非同期モニカーの詳細については、Microsoft ActiveX ソフトウェア開発キットを参照してください。 プロトコル固有の非同期モニカーは、バインド操作をトリガーし、必要なコンポーネントを設定します。 インターネットの場合、このモニカーは URL を解析してオブジェクトまたはストレージにバインドできるモニカーになります。 バインド操作のターゲットが永続オブジェクトの場合、 IMoniker::BindToStorage の呼び出しは非同期ストレージ オブジェクトを返します。

注意

現在のバージョンの Microsoft URL モニカーでは、非同期ストレージはサポートされていません。

 

非同期モニカー クライアントは、バインド状態コールバック オブジェクトを実装し、バインド コンテキストに登録することで、非同期バインディングを要求します。 バインド状態コールバック オブジェクトは IBindStatusCallback インターフェイスを公開します。これにより、クライアントはバインディングの設定を指定し、バインド操作の実行中に進行状況とグローバル データ可用性の通知を受け取ることができます。 非同期複合ファイルの実装では、クライアントが個々のストリームで特定の可用性通知を受信するために使用できる IProgressNotify の接続ポイントが提供されます。