EventSource.WriteEventWithRelatedActivityIdCore Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Ważne
Ten interfejs API nie jest zgodny ze specyfikacją CLS.
Zapisuje zdarzenie wskazujące, że bieżące działanie jest związane z innym działaniem.
protected:
void WriteEventWithRelatedActivityIdCore(int eventId, Guid* relatedActivityId, int eventDataCount, System::Diagnostics::Tracing::EventSource::EventData* data);
protected:
void WriteEventWithRelatedActivityIdCore(int eventId, Guid* childActivityID, int eventDataCount, System::Diagnostics::Tracing::EventSource::EventData* data);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
protected void WriteEventWithRelatedActivityIdCore (int eventId, Guid* relatedActivityId, int eventDataCount, System.Diagnostics.Tracing.EventSource.EventData* data);
[System.CLSCompliant(false)]
protected void WriteEventWithRelatedActivityIdCore (int eventId, Guid* relatedActivityId, int eventDataCount, System.Diagnostics.Tracing.EventSource.EventData* data);
[System.CLSCompliant(false)]
[System.Security.SecurityCritical]
protected void WriteEventWithRelatedActivityIdCore (int eventId, Guid* childActivityID, int eventDataCount, System.Diagnostics.Tracing.EventSource.EventData* data);
[<System.CLSCompliant(false)>]
[<System.Security.SecurityCritical>]
member this.WriteEventWithRelatedActivityIdCore : int * nativeptr<Guid> * int * nativeptr<System.Diagnostics.Tracing.EventSource.EventData> -> unit
[<System.CLSCompliant(false)>]
member this.WriteEventWithRelatedActivityIdCore : int * nativeptr<Guid> * int * nativeptr<System.Diagnostics.Tracing.EventSource.EventData> -> unit
Parametry
- eventId
- Int32
Identyfikator, który jednoznacznie identyfikuje to zdarzenie w obiekcie EventSource.
- relatedActivityIdchildActivityID
- Guid*
Wskaźnik do identyfikatora GUID powiązanego identyfikatora działania.
- eventDataCount
- Int32
Liczba elementów w data
polu.
Wskaźnik do pierwszego elementu w polu danych zdarzenia.
- Atrybuty
Przykłady
Poniższy przykład kodu w języku C# pokazuje, jak zdefiniować przeciążenie metody, które wywołuje WriteEventWithRelatedActivityIdCoremetodę .
[EventSource(Name = "Litware-ProductName-ComponentName")]
public sealed class LitwareComponentNameEventSource : EventSource
{
[Event(1, Task = Tasks.Request, Opcode = EventOpcode.Send)]
public void RequestStart(Guid relatedActivityId, int reqId, string url)
{
WriteEventWithRelatedActivityIdCore(1, relatedActivityId, reqId, url);
}
}
<EventSource(Name:="Litware-ProductName-ComponentName")> _
Public NotInheritable Class LitwareComponentNameEventSource
Inherits EventSource
<[Event](1, Task:=Tasks.Request, Opcode:=EventOpcode.Send)> _
Public Sub RequestStart(relatedActivityId As Guid, reqId As Integer, url As String)
WriteEventWithRelatedActivityIdCore(1, relatedActivityId, reqId, url)
End Sub
End Class
#region Keywords / Task / Opcodes
public static class Tasks
{
public const EventTask Request = (EventTask)0x1;
}
#endregion
#Region "Keywords / Task / Opcodes"
Public NotInheritable Class Tasks
Private Sub New()
End Sub
Public Const Request As EventTask = DirectCast(&H1, EventTask)
End Class
#End Region
Uwagi
WriteEventWithRelatedActivityIdCore metoda jest podobna WriteEventWithRelatedActivityId do metody , ale oferuje lepszą wydajność, ponieważ nie musi rozpatować childActivityID
argumentów i data
.
Metoda zdarzenia ETW wywołująca tę funkcję musi być zgodna z następującymi wytycznymi:
Określ pierwszy parametr jako nazwany Guid
relatedActivityId
.Określ właściwość Send lub Receive .EventAttribute.Opcode
Wywołanie WriteEventWithRelatedActivityIdCore przekazujące identyfikator zdarzenia, po którym następuje powiązany identyfikator GUID, po którym następuje wszystkie parametry przekazywane przez metodę zdarzenia w tej samej kolejności.
Ta metoda używa tych samych reguł co WriteEventCore dla parametru args
. Aby uzyskać więcej informacji, zobacz dokumentację aplikacji WriteEventCore.