/// <summary> /// Creates new <see cref = "ITrackedComponentsPerformanceCounter" /> from given <see cref = "IPerformanceMetricsFactory" />. /// </summary> /// <param name = "perfMetricsFactory"></param> /// <returns></returns> public static ITrackedComponentsPerformanceCounter GetTrackedComponentsPerformanceCounter( IPerformanceMetricsFactory perfMetricsFactory) { #if SILVERLIGHT return(NullPerformanceCounter.Instance); #else var process = Process.GetCurrentProcess(); var name = string.Format("Instance {0} | process {1} (id:{2})", Interlocked.Increment(ref instanceId), process.ProcessName, process.Id); return(perfMetricsFactory.CreateInstancesTrackedByReleasePolicyCounter(name)); #endif }
public static ITrackedComponentsPerformanceCounter GetTrackedComponentsPerformanceCounter(IPerformanceMetricsFactory perfMetricsFactory) { #if !SILVERLIGHT var process = Process.GetCurrentProcess(); var name = string.Format("Instance {0} | process {1} (id:{2})", Interlocked.Increment(ref instanceId), process.ProcessName, process.Id); return perfMetricsFactory.CreateInstancesTrackedByReleasePolicyCounter(name); #else return NullPerformanceCounter.Instance; #endif }
public ReleasePolicyTrackedObjects(IPerformanceMetricsFactory perfMetricsFactory) { this.perfMetricsFactory = perfMetricsFactory; }