2

Web ページのパフォーマンスを把握し、Trace.Write を使用しようとしています。

問題は、Parallel.Invoke を使用し、Trace.Write を使用して報告したいスレッドをさらに開始することです。

            Parallel.Invoke(() => Chart1AndLegend(param),
                () => Chart2(param),
                () => Chart3(param),
                () => Chart4(param));

Trace.Write はトレースの良い方法ではないことに気付きました。最後のエントリからの時間が表示されるため、より多くのスレッドが書き込みを行っている場合は意味がありません..

質問: Parallel ライブラリを使用する場合にページをインストルメント化する方法について何か良い提案があれば教えてください。それとも、独自のトレースを作成する必要がありますか!?!?

4

1 に答える 1

1

ここで明白なことを述べているかもしれませんが、StopWatch(またはいくつか)を作成し、Trace.Writeメッセージに経過時間を単に書き込むとどうなりますか?もう1つは、トレースカテゴリに含まれるスレッド/メソッドを特定することだと思います(Thread.CurrentThread.ManagedThreadIdを使用します)。

または、Enterprise Library、log4net、System.Diagnosticsのトレースなどの他のものを使用する必要があります(System.Diagnosticsのトレースの詳細については、 http: //www.15seconds.com/issue/020910.htmを参照してください) 。 。

于 2010-07-09T09:07:57.407 に答える