2009-07-08 14 views
2

1秒間に何千回もレジストリ値にアクセスするプロセスが複数ある場合、このレジストリ値を読み取るとパフォーマンスに大きな影響がありますか?Windowsのレジストリ値にアクセスするとパフォーマンスにどのような影響がありますか?

レジストリ値の値は決して変更されません。読み取り専用になります。私は別の質問は、レジストリ値をブロック操作を読み取っていると思いますか?

レジストリ値は、ASP.NETアプリケーション、Winフォームアプリケーション、およびWCFサービスによってアクセスされるデータベース接続の詳細を格納するための値です。

おかげで、

スチュアート

答えて

2

レジストリは本当に速い、速いです。しかし、毎秒何千回も?少なくとも、各アプリケーションの値をキャッシュしておけば、アプリの起動時に一度だけ読み込む必要があります。

+0

最初のアクセス後、Windowsのレジストリはすでに値をキャッシュしていますか?値を回転させることを期待しない限り、地方の利益のためだけにローカルに値を格納する必要があります。 –

+0

はい、頻繁にアクセスされる値は、レジストリマネージャによってキャッシュされる可能性があります。ただし、各呼び出しでコンテキスト切り替えが発生する可能性がありますので、ローカルにキャッシュする方が優れています。 –

+0

あなたの答えをありがとう、それは私の方法で私を設定します。乾杯。 – Simian

0

Windowsレジストリは、他のファイルよりも周囲の保護が強化された単なるファイルです。

ただし、どのファイルと同じように、アクセスされるとパフォーマンスが低下します。

アプリケーションの起動時に一度値を読み込んでメモリに保存し、必要に応じてオブジェクトに渡すことをお勧めします。

関連する問題