Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ TraceEvent() [1/3]

void System.Diagnostics.TraceSource.TraceEvent ( TraceEventType eventType,
int id )
inline

Definition at line 217 of file TraceSource.cs.

218 {
219 Initialize();
220 if (!_internalSwitch.ShouldTrace(eventType) || _listeners == null)
221 {
222 return;
223 }
224 TraceEventCache eventCache = new TraceEventCache();
225 if (TraceInternal.UseGlobalLock)
226 {
227 lock (TraceInternal.critSec)
228 {
229 for (int i = 0; i < _listeners.Count; i++)
230 {
231 TraceListener traceListener = _listeners[i];
232 traceListener.TraceEvent(eventCache, Name, eventType, id);
233 if (Trace.AutoFlush)
234 {
235 traceListener.Flush();
236 }
237 }
238 return;
239 }
240 }
241 for (int j = 0; j < _listeners.Count; j++)
242 {
243 TraceListener traceListener2 = _listeners[j];
244 if (!traceListener2.IsThreadSafe)
245 {
247 {
248 traceListener2.TraceEvent(eventCache, Name, eventType, id);
249 if (Trace.AutoFlush)
250 {
251 traceListener2.Flush();
252 }
253 }
254 }
255 else
256 {
257 traceListener2.TraceEvent(eventCache, Name, eventType, id);
258 if (Trace.AutoFlush)
259 {
260 traceListener2.Flush();
261 }
262 }
263 }
264 }
volatile TraceListenerCollection _listeners
volatile SourceSwitch _internalSwitch

References System.Diagnostics.TraceSource._internalSwitch, System.Diagnostics.TraceSource._listeners, System.Diagnostics.Trace.AutoFlush, System.Collections.Generic.Dictionary< TKey, TValue >.Count, System.Diagnostics.TraceInternal.critSec, System.Diagnostics.TraceSource.Initialize(), System.Diagnostics.TraceSource.Name, and System.Diagnostics.TraceInternal.UseGlobalLock.

Referenced by System.Diagnostics.TraceSource.TraceInformation(), and System.Diagnostics.TraceSource.TraceInformation().