private unsafe void Deserialize2ndPass(EVENT_RECORD *eventRecord) { uint threadId = eventRecord->ThreadId; int pointerSize = (eventRecord->Flags & Etw.EVENT_HEADER_FLAG_64_BIT_HEADER) != 0 ? 8 : 4; if (eventRecord->ProviderId == SampleEvent && eventRecord->Opcode == 46) { threadId = *(uint *)(eventRecord->UserData + pointerSize); } if (this.samplesTimeStampMap.TryGetValue(new CorrelatedStackEvent(eventRecord->TimeStamp, threadId), out var index)) { var providerId = eventRecord->ProviderId; var eventId = (eventRecord->Flags & Etw.EVENT_HEADER_FLAG_CLASSIC_HEADER) != 0 ? eventRecord->Opcode : eventRecord->Id; var key = new EtwProviderInfo(eventRecord->ProviderId, eventRecord->Id, eventRecord->Opcode); if (!this.etwProviderInfoMap.TryGetValue(key, out var stackEventType)) { var id = this.etwProviderInfoMapIndex++; stackEventType = new StackEventType(id, TdhGetManifestEventInformation(providerId, eventId)); this.etwProviderInfoMap.Add(key, stackEventType); this.EventStacks.Add(id, stackEventType); } stackEventType.SampleIndices.Add(index); } }
public bool DeleteStackEventType(StackEventType entity) { if(entity==null) return false; _unitOfWork.StackEventTypeRepository.Delete(entity); _unitOfWork.Save(); return true; }
public bool DeleteStackEventType(StackEventType entity) { if (entity == null) { return(false); } _unitOfWork.StackEventTypeRepository.Delete(entity); _unitOfWork.Save(); return(true); }
public bool EditStackEventType(StackEventType entity) { _unitOfWork.StackEventTypeRepository.Edit(entity); _unitOfWork.Save(); return(true); }
public bool EditStackEventType(StackEventType entity) { _unitOfWork.StackEventTypeRepository.Edit(entity); _unitOfWork.Save(); return true; }