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

◆ TraceTransfer()

void System.Diagnostics.TraceSource.TraceTransfer ( int id,
string? message,
Guid relatedActivityId )
inline

Definition at line 479 of file TraceSource.cs.

480 {
481 Initialize();
482 TraceEventCache eventCache = new TraceEventCache();
483 if (!_internalSwitch.ShouldTrace(TraceEventType.Transfer) || _listeners == null)
484 {
485 return;
486 }
487 if (TraceInternal.UseGlobalLock)
488 {
489 lock (TraceInternal.critSec)
490 {
491 for (int i = 0; i < _listeners.Count; i++)
492 {
493 TraceListener traceListener = _listeners[i];
494 traceListener.TraceTransfer(eventCache, Name, id, message, relatedActivityId);
495 if (Trace.AutoFlush)
496 {
497 traceListener.Flush();
498 }
499 }
500 return;
501 }
502 }
503 for (int j = 0; j < _listeners.Count; j++)
504 {
505 TraceListener traceListener2 = _listeners[j];
506 if (!traceListener2.IsThreadSafe)
507 {
509 {
510 traceListener2.TraceTransfer(eventCache, Name, id, message, relatedActivityId);
511 if (Trace.AutoFlush)
512 {
513 traceListener2.Flush();
514 }
515 }
516 }
517 else
518 {
519 traceListener2.TraceTransfer(eventCache, Name, id, message, relatedActivityId);
520 if (Trace.AutoFlush)
521 {
522 traceListener2.Flush();
523 }
524 }
525 }
526 }
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.