public static void BeginPage(Uri url) { if (!enabled) { return; } var page = (PageMonitor)Workbench.Current.Items[PageMonitorKey]; if (page == null) { page = new PageMonitor(url); Workbench.Current.Items[PageMonitorKey] = page; } }
public void Append(PageMonitor page) { Interlocked.Increment(ref Count); Interlocked.Add(ref Spans, page.ElapsedMilliseconds); foreach (var rep in page.Repositories) { repositories.AddOrUpdate(rep.RepositoryPath, (key) => { return(new RepositoryMonitorData() { Name = rep.RepositoryPath, Count = 1, Spans = rep.ElapsedMilliseconds }); }, (key, repData) => { repData.Count++; repData.Spans += rep.ElapsedMilliseconds; return(repData); }); } }