2 Stimmen

Microsoft Logging-Anwendungsblock und Multithreading

Ich bin neu im Anwendungsblock Protokollierung (4.1). Hat jemand eine Anwendung geschrieben, die den Logging-Anwendungsblock von mehreren Threads aus verwendet? Ich frage deshalb, weil der Logger eine statische Klasse ist und weil er zum Beispiel von mehreren Threads aus in dieselbe Protokolldatei schreiben kann.

3voto

Aidan Ryan Punkte 11109

Der Logging Application Block ist thread-sicher, d.h. Sie können seine öffentlichen Methoden von mehreren Threads aus aufrufen, ohne selbst eine Synchronisation durchführen zu müssen. Die Bibliothek führt ihre eigene Synchronisation durch.

0 Stimmen

Ich denke, worauf @Sunny hinaus will, ist das Problem, wenn zwei Instanzen der Anwendung laufen (z. B. eine Webanwendung auf einem Server) und sie versuchen, gleichzeitig in eine Protokolldatei zu schreiben. In diesem Fall erstellt die Enterprise Library eine neue Protokolldatei und stellt ihr eine GUID vor, was nicht ideal ist.

0voto

Tobias Hertkorn Punkte 2732

Ich bin mir nicht ganz sicher, warum Sie sich Sorgen machen, dass dies passieren könnte. Solange Sie eine Kategorie für Ihre Logging-Meldungen angeben, sollten diese in die entsprechende Logging-Datei geschrieben werden, die für diese Kategorie konfiguriert ist. Dieser Vorgang ist thread-sicher.

Oder geht es darum, die Protokollierungsmeldungen der gleichen Kategorie in verschiedene Dateien pro Thread zu schreiben? Z.B. Thread 1 -> mylog-1.log; Thread 2 -> mylog-2.log

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X