カスタムIControllerFactoryを実装して、asp.netmvcコントローラーを作成しています。このファクトリのCreateControllerメソッドでは、コントローラーを作成するスレッドが一意であるという事実に依存しています。これは、ReleaseControllerが呼び出される前に、そのスレッド上に他のコントローラーが作成されないことを意味します。
現在、高負荷テストの下で、問題が発生しています。スレッド1、2、3でコントローラーを作成したとすると、最初のコントローラーがIControllerFactory.ReleaseControllerを呼び出す前に、新しいコントローラーがスレッド1で作成されているようです。
これは予想される動作ですか?コントローラへの各リクエストは別々のスレッドで処理されますよね?IControllerFactoryのReleaseControllerメソッドが呼び出される前に、同じスレッドが別のリクエストに再利用されるのはなぜですか?
お時間をいただきありがとうございます、Koen