public PerformanceCounterValueCollector(MetricName name, string unitName, IPerformanceCounterProxy counter, bool disposesCounter) : base(name, unitName) { Counter = counter; DisposesCounter = disposesCounter; }
private float GetPerfCounterValue_DeltaValue(IPerformanceCounterProxy proxy, ref float prevValue) { var currentPerfCounterVal = proxy.NextValue(); var prevPerfCounterVal = Interlocked.Exchange(ref prevValue, currentPerfCounterVal); return(currentPerfCounterVal - prevPerfCounterVal); }
protected override void DisposeInternal() { if (DisposesCounter) { Counter.Dispose(); } Counter = null; }
protected override void DisposeInternal() { if (DisposesCounter) { Counter.Dispose(); } Counter = null; }
public bool Put(MetricName name, IPerformanceCounterProxy concreteCounter) { if (!Exists(name)) { _cachedCounters[name] = new CachedPerformanceCounterProxy(() => concreteCounter); return true; } // already exists - not overriding return false; }
public bool Put(MetricName name, IPerformanceCounterProxy concreteCounter) { if (!Exists(name)) { _cachedCounters[name] = new CachedPerformanceCounterProxy(() => concreteCounter); return(true); } // already exists - not overriding return(false); }
public void SetUp() { _instanceNameLookupCount = 0; _expectedPerformanceCounter = Mock.Create <IPerformanceCounterProxy>(); _createPerformanceCounter = (_, __, ___) => _expectedPerformanceCounter; _performanceCounterCategory = Mock.Create <IPerformanceCounterCategoryProxy>(); _createPerformanceCounterCategory = _ => _performanceCounterCategory; _currentProcess = Mock.Create <IProcess>(); _processStatic = Mock.Create <IProcessStatic>(); Mock.Arrange(() => _processStatic.GetCurrentProcess()).Returns(_currentProcess); _factory = new PerformanceCounterProxyFactory(_processStatic, CreatePerformanceCounterCategory, CreatePerformanceCounter); }
private float GetPerfCounterValue_InducedCount(IPerformanceCounterProxy proxy) { return(GetPerfCounterValue_DeltaValue(proxy, ref _PrevInducedCount)); }
private float GetPerfCounterValue_Gen2CollectionCount(IPerformanceCounterProxy proxy) { return(GetPerfCounterValue_DeltaValue(proxy, ref _PrevGen2CollectionCount)); }
private float GetPerfCounterValue_Raw(IPerformanceCounterProxy proxy) { return(proxy.NextValue()); }
public PerformanceCounterValueCollector(MetricName name, string unitName, IPerformanceCounterProxy counter, bool disposesCounter) : base(name, unitName) { Counter = counter; DisposesCounter = disposesCounter; }