ASP.NET Core Dependency Injectionでは、Singleton
インスタンスを登録すると、Transient
インスタンスを登録するよりもパフォーマンスが向上するのかどうか疑問に思います。
私の考えでは、Singleton
インスタンスの場合、新しいオブジェクトと依存オブジェクトの作成にかかる時間は1回だけです。 Transient
インスタンスの場合、このコストはサービスリクエストごとに繰り返されます。したがって、Singleton
の方が良いようです。しかし、Singleton
よりもTransient
を使用した場合のパフォーマンスはどの程度向上しますか?よろしくお願いします!
返信で述べたように、これは実際にはパフォーマンスの問題ではありません。
詳細については、下記のリンクを参照してください。ここで、違いが非常に詳しく説明されています。 https://stackoverflow.com/a/38139500/1055119
これがパフォーマンスに影響する唯一の方法は、コンストラクターが多くのことをしている場合です。これは回避できますが、すべての場合で回避する必要があります。