バージョン 2.0 要求キューでの需要開始

HTTP Server バージョン 2.0 API 要求キューの需要開始機能を使用すると、コントローラー アプリケーションは、要求キューに最初の要求が到着するまでワーカー プロセスのインスタンス化を遅延できます。 したがって、アプリケーションは、必要になるまでリソースの消費を回避できます。 コントローラー アプリケーションの詳細については、「 名前付き要求キュー 」トピックを参照してください。

非同期需要の開始

コントローラー アプリケーションは、要求キューへのハンドルを使用して HttpWaitForDemandStart を呼び出して、要求開始通知を開始します。 非同期完了の場合、アプリケーションは pOverlapped パラメーターに重複した構造体を提供します。 HttpWaitForDemandStart が非同期的に呼び出されると、最初の要求が要求キューに到着すると、コントローラー アプリケーションに通知されます。 需要開始通知が完了すると、コントローラー アプリケーションは要求キューに別の需要開始通知を登録できます。

HTTP Server API では、要求キューに対して複数の同時需要開始通知が許可されません。 ただし、未処理の需要開始通知が完了すると、アプリケーションは HttpWaitForDemandStart を再度呼び出して、要求キューで複数のワーカー プロセスを開始します。 HTTP では、要求開始通知の数や要求キューで動作するワーカー プロセスの数に制限は適用されません。 ただし、コントローラー アプリケーションでは、要求キューで許可されるワーカー プロセスの数を適用できます。

HTTP Server API では、非同期 の HttpWaitForDemandStart 呼び出しの取り消しがサポートされています。 アプリケーションでは、pOverlapped で指定された重複した構造体と共に CancelIoEx を使用して、未処理の HttpWaitForDemandStart 呼び出しを取り消すことができます。

同期需要の開始

要求が要求キューに到着するまでアプリケーションがブロックするため、同期要求の開始はお勧めしません。