web-dev-qa-db-ja.com

ASP.NET Coreシングルトンインスタンスと一時インスタンスのパフォーマンス

ASP.NET Core Dependency Injectionでは、Singletonインスタンスを登録すると、Transientインスタンスを登録するよりもパフォーマンスが向上するのかどうか疑問に思います。

私の考えでは、Singletonインスタンスの場合、新しいオブジェクトと依存オブジェクトの作成にかかる時間は1回だけです。 Transientインスタンスの場合、このコストはサービスリクエストごとに繰り返されます。したがって、Singletonの方が良いようです。しかし、SingletonよりもTransientを使用した場合のパフォーマンスはどの程度向上しますか?よろしくお願いします!

14
tuq

返信で述べたように、これは実際にはパフォーマンスの問題ではありません。

詳細については、下記のリンクを参照してください。ここで、違いが非常に詳しく説明されています。 https://stackoverflow.com/a/38139500/1055119

これがパフォーマンスに影響する唯一の方法は、コンストラクターが多くのことをしている場合です。これは回避できますが、すべての場合で回避する必要があります。

1
swforlife