2009-03-26 11 views
2

ロギングアプリケーションブロック(4.1)を初めて使用しました。 複数のスレッドからログアプリケーションブロックを使用するアプリケーションを作成した人はいますか? Loggerは静的なクラスであり、複数のスレッドから同じログファイルに書き込む可能性があるため、私は尋ねています。Microsoftロギングアプリケーションブロックとマルチスレッド化

答えて

0

なぜこのようなことが起こる可能性があるのか​​、あまり気にしていません。ロギングメッセージのカテゴリを指定する限り、そのカテゴリに設定された適切なロギングファイルに書き込まれる必要があります。この操作はスレッドセーフです。

スレッド別に同じカテゴリのログメッセージを別のファイルに書き込むことについて話していますか?例えば。スレッド1 - > mylog-1.log;スレッド2 - > mylog - 2.log

3

ロギングアプリケーションブロックはスレッドセーフです。つまり、自分自身の同期を行わずに複数のスレッドからパブリックメソッドを呼び出すことができます。ライブラリは独自の同期を行います。

+0

@Sunnyは、アプリケーションの2つのインスタンス(たとえば、サーバー上のWebアプリケーション)が実行されているときに問題が発生し、同時にログファイルに書き込もうとします。エンタープライズライブラリは新しいログファイルを作成し、それにGUIDを付加しますが、これは理想的ではありません。 –

関連する問題