public void Execute(MetricExecutionContext context) { long inputCount = context.FilterService.NumEventsEvaluated; long schedDepth = context.SchedulingService.ScheduleHandleCount; var deltaInputCount = lastMetric == null ? inputCount : inputCount - lastMetric.InputCount; var metric = new RuntimeMetric( runtimeURI, metricScheduleService.CurrentTime, inputCount, deltaInputCount, schedDepth); lastMetric = metric; metricEventRouter.Route(metric); metricScheduleService.Add(Interval, this); }
public void Execute( MetricExec execution, MetricExecutionContext executionContext) { _threadPool.Submit(() => execution.Execute(executionContext)); }