0

MS Enterprise Library - Logging Application ブロックのハンズオン ラボを試しています。

トレースを追加すると、「フラット ファイル」リスナーに次のような「メッセージ」が表示されます。 767616631287998 ティック (経過時間: 10.292 秒)

トレースから、「単独で」経過時間、つまり経過ティックを取得することもできますか。

ありがとう、

4

1 に答える 1

1

APIは、パブリックインターフェイスでタイミング情報を公開しません。リフレクションを使用して情報を取得することもできますが、それは自分の危険で行います(変更される可能性のある内部実装に依存するため)。

using (Tracer tracer = new Tracer("General"))
{
    FieldInfo fieldInfo = typeof(Tracer).GetField("stopwatch", BindingFlags.NonPublic | BindingFlags.Instance);
    var sw = fieldInfo.GetValue(tracer) as Stopwatch;
    Console.WriteLine(sw.ElapsedMilliseconds);
}

もう1つの方法は、関心のあるプロパティを公開する独自のトレーサー実装(エンタープライズライブラリコードに基づく)を作成することです。

于 2012-04-23T07:35:09.660 に答える