PerformanceCounter.RawValue プロパティ
アセンブリ: System (system.dll 内)
構文Dim instance As PerformanceCounter Dim value As Long value = instance.RawValue instance.RawValue = value
カウンタの生の値。
例外| 例外の種類 | 条件 |
|---|---|
InvalidOperationException | カウンタの生の値を設定しようとしていますが、カウンタが読み取り専用です。 または インスタンスがパフォーマンス カウンタに正しく関連付けられていません。 または |
Win32Exception | |
PlatformNotSupportedException | プラットフォームが Windows 98 または Windows Millennium Edition (Me) です。パフォーマンス カウンタはサポートされません。 |
解説カウンタ タイプが 32 ビットのサイズの場合、このプロパティに設定しようとする値が大きすぎると、プロパティは 32 ビットの値に切り詰められます。ローカル コンピュータのカスタム カウンタを読み取るとき、生の値で十分な場合は、計算された値ではなく RawValue プロパティを使用すると、パフォーマンスを大幅に向上できます。
読み取るカウンタが読み取り専用の場合は、RawValue プロパティを取得すると、プロパティが呼び出された時点のカウンタがサンプリングされます。このアクションは、NextSample メソッドを初めて呼び出すときと同じです。続けて NextSample を呼び出すと、両方の呼び出しによって返される値を使用して計算を実行できます。
システム カウンタは読み取り専用であるため、生の値を取得できますが、設定はできません。
メモ |
|---|
| Increment メソッド、IncrementBy メソッド、および Decrement メソッドでは、インタロックを使用してカウンタの値を更新します。これにより、マルチスレッドやマルチプロセスの状況でもカウンタ値を正確に維持できますが、パフォーマンスの低下が生じます。インタロックを使用した処理による正確性が不要な場合は、RawValue プロパティを直接更新することで、パフォーマンスを最大 5 倍に高めることができます。ただし、マルチスレッドの場合、カウンタ値の更新の一部が無視され、データが不正確になる可能性があります。 |
メモ |
|---|
| InstanceLifetime プロパティの値が Process のとき、パフォーマンス カウンタ カテゴリが .NET Framework Version 1.0 または 1.1 で作成されている場合、InvalidOperationException がスローされます。グローバル共有メモリを使用する古いバージョンでパフォーマンス カウンタ カテゴリが作成されている場合、InstanceLifetime の値は Global に設定する必要があります。このカテゴリが .NET Framework Version 1.0 または 1.1 で実行されるアプリケーションで使用されない場合、カテゴリを削除して再作成します。 |
.NET Framework のセキュリティ
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照- PerformanceCounter.RawValue プロパティのページへのリンク
.gif)