Daily Archives: 2017-03-03

[Departure from the Void] ログ出力処理改良

今日はログ出力周りを少し改良しました。

ログ出力は実行時に行われないようにする方向で実装していますが、以下のような処理だと空処理を行うメソッドコールが発生してしまいます。

ログ出力メソッドのコール元を全てマクロで対応するのも得策ではありません。

そこで、以下のようにconditional属性を用います。

これで、DEBUGマクロが定義されていない場合はメソッドコールがされなくなり、無駄なパフォーマンス低下を防ぐことが出来ます。

conditional属性はC#の一般的な機能ですが、意外と知られていないため、機能の紹介も兼ねて書き残しておきます。