関数の属性
[コールバック] と [ローカル] 属性を関数属性として適用できます。
コールバックは、概念的な単一実行スレッドの一部として実行されるサーバーからクライアントへのリモート呼び出しです。 コールバックは常にリモート呼び出し (またはコールバック) のコンテキストで発行され、元のリモート呼び出し (またはコールバック) を発行したスレッドによって実行されます。
多くの場合、これはパッケージへのインターフェイスを記述するための論理的な場所であるため、IDL ファイルにローカル プロシージャ宣言を配置することが望ましいです。 [ローカル] 属性は、プロシージャ宣言が実際にはリモート関数ではなくローカル プロシージャであることを示します。 MIDL コンパイラは、[local] 属性を持つ関数のスタブを生成しません。
マルチスレッド プログラミングでは、[コールバック] の使用は推奨されないことに注意してください。 シングルスレッドプログラミング関数として、マルチスレッド環境が提供するセキュリティ要求をサポートする機能はありません。