Exemplo n.º 1
0
        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;
            }
        }
Exemplo n.º 2
0
        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);
                });
            }
        }