11
例外がスローされない場合、try / catchブロックはパフォーマンスを低下させますか?
マイクロソフトの従業員とのコードレビュー中に、try{}ブロック内のコードの大きなセクションに遭遇しました。彼女とIT担当者は、これがコードのパフォーマンスに影響を与える可能性があることを示唆しました。実際、彼らはほとんどのコードはtry / catchブロックの外にあるべきであり、重要なセクションだけがチェックされるべきであると提案しました。マイクロソフト社の従業員は、次のホワイトペーパーを追加して、不正なtry / catchブロックに対して警告を発すると述べています。 調べてみたところ、最適化に影響する可能性があることがわかりましたが、スコープ間で変数が共有されている場合にのみ適用されるようです。 私はコードの保守性について質問したり、適切な例外を処理したりすることもしていません(問題のコードは間違いなくリファクタリングが必要です)。フロー制御の例外の使用についても言及していません。これはほとんどの場合明らかに間違っています。これらは重要な問題です(いくつかはより重要です)が、ここでは焦点を当てていません。 例外がスローされない場合、try / catchブロックはパフォーマンスにどのように影響しますか?
274
c#
performance
try-catch