Windows
 Computer >> コンピューター >  >> システム >> Windows

System.Diagnostics.StackFrameのパフォーマンスはWindows10で低下します

Windows10または.NETFramework4.7.1にアップグレードした後、 System.Diagnostics.StackFrame を使用する.NETFrameworkアプリケーションを実行すると、パフォーマンスが大幅に低下することに気付いた場合。 クラス、そしてこの投稿はあなたに興味があるかもしれません。原因を調べてから、エラーの既知の修正を提供します。

System.Diagnostics.StackFrameのパフォーマンスが低下します

System.Diagnostics.StackFrameのパフォーマンスはWindows10で低下します

.NET Framework 4.7以前のバージョンで実行されている許容可能なパフォーマンスを備えたアプリケーションは、.NETFramework4.7.1で実行すると実行速度が遅くなります。アプリケーションは通常、.NET例外をスローするときにStackFrameに依存します。これが高速で発生する場合(1秒あたり10件を超えるインシデント)、アプリケーションの速度が大幅に低下し(10倍)、実行速度が以前よりも著しく遅くなる可能性があります。

System.Diagnostics.StackFrameのパフォーマンスが低下する原因

Windows10の.NETFramework4.7.1では、ポータブルPDBファイル形式を検出および解析して、ファイルと行番号の情報をスタックトレースに表示するためのサポートが追加されました。この変更の一環として、スタックトレースの各関数の定義モジュールがチェックされ、そのモジュールがPortablePDB形式を使用しているかどうかが判断されます。内部キャッシュポリシーにいくつかの違いがあるため、ランタイムは、従来の.NETFrameworkバージョンが従来のWindowsPDBの検索に費やした時間よりも、ポータブルPDBの検索にはるかに多くの時間を費やします。

これにより、フォーマットされたスタックトレースの生成が以前よりも遅くなります。

この問題は、スローされる例外の数を変更しません。ただし、これらの例外を処理するアプリケーションの能力は大幅に低下します。

IKVMライブラリを使用するアプリケーションは、アセンブリをプローブする場合、この問題の影響を受けることがわかっています。アセンブリのプロービングは例外を引き起こすことが知られています。

System.Diagnostics.StackFrameのパフォーマンス低下の問題を修正

この問題を解決するには、次のいずれかの方法を使用することをお勧めします。

1]ブール引数を取るStackFrame用の別のコンストラクターを使用します

これが推奨されるソリューションです。

アプリケーション開発者がアプリケーションに変更を加えることができる場合は、false引数を使用してSystem.Diagnostics.StackTrace。#ctor(Boolean)コンストラクターを呼び出し、ソース情報のキャプチャを回避します。これにより、パフォーマンスが低下するコードのセクションが回避されます。

2]最新のWindows10バージョンへのロールバックまたはアップグレード

この方法で、この問題が発生し、現在Windows 10の最新バージョンを実行していない場合は、以前のバージョン/ビルドにロールバックするか、最新バージョン/ビルドにアップグレードします。また、.NETFramework4.7をアンインストールします。 .1存在する場合は、コンピューターから、以前のバージョンまたは最新バージョンの.NETFrameworkをダウンロードしてインストールします。

これがお役に立てば幸いです!

System.Diagnostics.StackFrameのパフォーマンスはWindows10で低下します
  1. Windows 11 のパフォーマンスを改善するための 5 つの最適な CCleaner の代替手段

    CCleaner は、Windows PC 向けの優れたクリーニング アプリであることが証明されています。ただし、追加機能が不足しているため、CCleaner の代替品を探します。ただし、非常に多くのオプションが用意されているため、Windows コンピューターに適したソフトウェアを見つけるのは難しい場合があります。 コンピューターのパフォーマンスに直接影響するいくつかのことを探す必要があります。まず、ソフトウェアはコンピューターから不要なジャンクを削除してストレージにスペースを作ることができなければなりません。これは速度に影響します。次に、脅威の検出とセキュリティの提供に優れている必要があ

  2. Advanced System Optimizer で Windows のパフォーマンスを改善する

    ブログの要約 – コンピューターから最高の出力を得たい場合は、それを維持する方法を知っている必要があります。システムを最高の状態で実行するには、最適化されたコンピューターを使用することが最も重要です。 Advanced System Optimizer を使用して Windows PC のパフォーマンスを向上させる方法について説明します。 コンピューターの速度が遅い理由を知りたい場合は、このブログでその理由を明らかにし、PC の最適化に役立ててください。コンピュータを毎日使用する場合でも、たまに使用する場合でも、高速でスムーズなシステムの実行が望まれます。新しいコンピューターを入手すると