EventSource.WriteEventWithRelatedActivityIdCore Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Wichtig
Diese API ist nicht CLS-kompatibel.
Schreibt ein Ereignis, die angibt, dass die aktuelle Aktivität mit einer andere Aktivität in Beziehung steht.
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
Parameter
- eventId
- Int32
Ein Bezeichner, der dieses Ereignis eindeutig in der EventSource identifiziert.
- relatedActivityIdchildActivityID
- Guid*
Ein Zeiger auf die GUID der zugeordneten Aktivitäts-ID.
- eventDataCount
- Int32
Die Anzahl der Elemente im data
-Feld.
Ein Zeiger auf das erste Element im Ereignisdatenfeld.
- Attribute
Beispiele
Das folgende C#-Codebeispiel zeigt, wie eine Methodenüberladung definiert wird, die aufruft WriteEventWithRelatedActivityIdCore.
[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
Hinweise
WriteEventWithRelatedActivityIdCoreähnelt der WriteEventWithRelatedActivityId Methode, bietet jedoch eine bessere Leistung, da die Argumente und data
nicht entpackt childActivityID
werden müssen.
Ihre ETW-Ereignismethode, die diese Funktion aufruft, muss die folgenden Richtlinien befolgen:
Geben Sie den ersten Parameter als namen Guid
relatedActivityId
an.Geben Sie entweder Send oder Receive als Eigenschaft an EventAttribute.Opcode .
Rufen Sie WriteEventWithRelatedActivityIdCore die Ereignis-ID auf, gefolgt von der zugehörigen ID-GUID, gefolgt von allen Parametern, die die Ereignismethode übergeben wird, in der gleichen Reihenfolge.
Diese Methode verwendet dieselben Regeln wie WriteEventCore für den args
-Parameter. Weitere Informationen finden Sie unter WriteEventCore-Dokumentation.