System.Diagnostics.Tracing.EventWrittenEventArgs, klasa
Ten artykuł zawiera dodatkowe uwagi dotyczące dokumentacji referencyjnej dla tego interfejsu API.
Klasa EventWrittenEventArgs udostępnia dane dla wywołania zwrotnego OnEventWritten .
Za każdym razem, gdy zdarzenie jest wysyłane do EventListenermetody , wywoływana EventListener.OnEventWritten jest metoda wywołania zwrotnego. Jest ono przekazywane EventWrittenEventArgs
wystąpienie zawierające informacje skojarzone ze zdarzeniem. Wszystkie wartości EventWrittenEventArgs
właściwości klasy są prawidłowe tylko podczas wywołania zwrotnego.
Poniższe sekcje zawierają dodatkowe informacje o poszczególnych EventWrittenEventArgs
właściwościach.
Właściwość ActivityId
W przypadku używania System.Activities.Activity i jego klas pochodnych wątki mogą być oznaczone jako skojarzone z nimi działanie. Właściwość ActivityId
zwraca identyfikator działania wątku, który zarejestrował zdarzenie. Należy pamiętać, że wątki nie muszą mieć działania, w takim przypadku ta właściwość zwraca wartość Guid.Empty.
Właściwości OSThreadId i TimeStamp
Począwszy od platformy .NET Core 2.2, EventListener obiekty mogą subskrybować natywne zdarzenia środowiska uruchomieniowego (takie jak zdarzenia GC, JIT i threadpool) oprócz zdarzeń emitowanych przez EventSource obiekty. W poprzednich wersjach platformy .NET Core i wszystkich wersji programu .NET Framework identyfikator wątku i znacznik czasu można zebrać ze środowiska, ponieważ są one wysyłane synchronicznie w tym samym wątku, który je emitował. Nie wszystkie natywne zdarzenia środowiska uruchomieniowego można jednak wysyłać synchronicznie. Niektóre zdarzenia, takie jak zdarzenia GC, są emitowane, gdy wykonywanie zarządzanego wątku jest zawieszone. Te zdarzenia są buforowane w kodzie natywnym i są wysyłane przez wątek dyspozytora, gdy zarządzany kod może zostać wykonany ponownie. Ponieważ te zdarzenia są buforowane, środowisko nie może być używane do niezawodnego pobierania identyfikatora wątku i znacznika czasu. W związku z tym, począwszy od platformy .NET Core 2.2, informacje o identyfikatorze wątku i znaczniku EventWrittenEventArgs
czasu są dostępne jako elementy członkowskie klasy.
Właściwość RelatedActivityId
Powiązane działanie to działanie, które jest silnie powiązane z bieżącym działaniem. Zazwyczaj jest to działanie, które spowodowało bieżące działanie (zdarzenia z kodem opcode zwykle to robią) lub działanie, które zostało utworzone przez bieżący (zdarzenia z Start
Send
kodem opcode zwykle to robią). Gdy jest używany, RelatedActivityID
parametr jest jawnie przekazywany przez metodę wykonującą rejestrowanie. Wiele zdarzeń nie przekazuje RelatedActivityId
obiektu , w tym przypadku ta właściwość zwraca wartość Guid.Empty.