パイプの基本的な用語
リモート プロシージャ呼び出しに対する他の種類のパラメーターと同様に、パイプには [ in] パラメーターまたは [ out] パラメーターを指定できます。 サーバーはパイプを介したデータの転送を制御するため、[in] 属性を持つパイプは、データをサーバーに プル すると言われます。 同様に、出力パイプはサーバーからクライアントにデータを プッシュ します。 データ転送を行うプロシージャは、それぞれ プル プロシージャ と プッシュ プロシージャと呼ばれます。
MIDL コンパイラは、サーバーのプッシュプロシージャとプルプロシージャを生成します。 さらに、メモリ内のデータ バッファーの割り当てを管理します。 ただし、クライアントは独自のプッシュプロシージャとプルプロシージャを提供する必要があります。 また、パイプで使用されるメモリ バッファーを割り当てる手順も提供する必要があります。 これらは、クライアント スタブによって適切なタイミングで自動的に呼び出されます。 割り当てプロシージャは、多くの場合、アロケーション プロシージャまたはアロケーション関数と呼ばれます。