Пример #1
0
        public async Task Optimised()
        {
            for (var i = 0; i < 75; i++)
            {
                var newData = ArrayPool <CloudFrontRecordStruct> .Shared.Rent(10000);

                try
                {
                    var items = await CloudFrontParserNew.ParseAsync(_filePath, newData);
                }
                finally
                {
                    ArrayPool <CloudFrontRecordStruct> .Shared.Return(newData);
                }
            }
        }
Пример #2
0
        //static void Main(string[] args) => _ = BenchmarkRunner.Run<CloudFrontParserBenchmarks>();

        static async Task Main()
        {
            var directoryPath = Path.GetDirectoryName(Assembly.GetAssembly(typeof(CloudFrontRecord)).Location);
            var filePath      = Path.Combine(directoryPath, "sample-cloudfront-access-logs.gz");

            var newData = ArrayPool <CloudFrontRecordStruct> .Shared.Rent(10000);

            try
            {
                var items = await CloudFrontParserNew.ParseAsync(filePath, newData);
            }
            finally
            {
                ArrayPool <CloudFrontRecordStruct> .Shared.Return(newData);
            }
        }