Есть ли способ уменьшить время чтения blg-файла (счетчика производительности)?

Я использую Tx.Windows пакет nuget для чтения счетчика производительности blg файл.

https://github.com/Microsoft/Tx

С файлом небольшого размера, результат очень немедленный для приведенного ниже кода, но с ростом размера моего файла время, затрачиваемое на чтение, также увеличивается. При большом размере файла (скажем, 500 МБ) время чтения файла очень велико.

Есть ли способ уменьшить время чтения файла?

using System;
using System.Linq;
using System.Reactive.Linq;
using Tx.Windows;

namespace ConsoleApp3
{
class Program
{
    static void Main(string[] args)
    {
        var observable = PerfCounterObservable.FromFile(@"C:\Files\test.blg");

        var grouped = from a in observable
                      group a by new { a.Machine, a.Instance, a.Timestamp } into groups
                      from g in groups.ToArray()
                      select new
                      {
                          groups.Key.Machine,
                          groups.Key.Instance,
                          groups.Key.Timestamp,
                          Counters = g
                      };

        var all = grouped.ToEnumerable().ToArray();

        Console.ReadLine();
    }
}
}

Пример файла blg на Microsoft Tx местоположение github,

https://github.com/Microsoft/Tx/blob/master/Traces/BasicPerfCounters.blg

а вот тестовый код,

https://github.com/Microsoft/Tx/blob/master/Test/Tx.Windows.Tests/PerfCounterTest.cs

0 ответов

Другие вопросы по тегам