次の方法で共有


Windows 環境の拡張機能

このセクションでは、非ブロッキングまたは非同期動詞補完を可能にする Microsoft® Windows® Common Programming Interface for Communications (CPI-C) の API 拡張機能について説明します。 非同期動詞は、完全な実行を待たずに直ちに制御をプログラムに返し、動詞が完了したら後でアプリケーションに通知する必要があります。 アプリケーションは、 Wait_For_Conversation 呼び出しの完了に応答して通知も受け取ります。 これに対し、同期動詞ブロック、つまり関数呼び出しは呼び出しが完了するまで戻りません。

Microsoft® Windows Server では、非同期動詞補完を処理するために次の 2 つのメソッドを使用できます。

  • ウィンドウ ハンドルを使用したメッセージの投稿。

  • Win32® イベントを待機しています。

    最初のメソッドは、ウィンドウ ハンドルにポストされたメッセージを使用して、動詞の完了をアプリケーションに通知します。 このようなウィンドウは、CPI-C アプリケーションごとに 1 つあります。 CPI-C 会話ごとに、任意の時点で 1 つの非同期動詞が未処理状態で残っていることができます。 動詞が完了すると、ウィンドウへの投稿は、完了した動詞の CPI-C 会話識別子と動詞のリターン コードをパラメーターとして受け取ります。

このセクションで説明するウィンドウ ハンドルとメッセージ投稿を使用する拡張機能は、Microsoft Windows のすべての実装とバージョン用に設計されています。 Windows でのみサポートされるようになりました。

通知に Win32 イベントを使用する 2 つ目の方法は、Microsoft® Host Integration Server でサポートされています。 このセクションで説明する Win32 イベント (WinCPICSetEventWinCPICExtractEvent) を使用する拡張機能は、Windows Server でのみ動作し、32 ビットのオペレーティング環境で最適なアプリケーション パフォーマンスを提供します。 イベントが会話に登録されている場合、アプリケーションは Win32 WaitForSingleObject または WaitForMultipleObjects 関数を呼び出して、動詞の完了の通知を待機できます。

Windows CPI-C では、マルチスレッドの Windows ベースのプロセスを使用できます。 マルチスレッドは、1 つのプログラム内で複数のプロセスを迅速に実行することです。 プロセスには、1 つ以上の実行スレッドが含まれています。

このセクションの拡張機能の説明では、CPI-C プログラムでこれらの Windows 拡張機能を使用するための関数、構文、戻り値、および注釈の定義を示します。

このセクションにて