Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.IO;
- using BenchmarkDotNet.Attributes;
- using BenchmarkDotNet.Attributes.Jobs;
- using BenchmarkDotNet.Running;
- namespace Client
- {
- [ShortRunJob]
- public class Benchmark
- {
- [Benchmark]
- public int UseOrdinal()
- {
- var accum = 0;
- using (var stream = new FileStream("G:\\output.txt", FileMode.Open, FileAccess.Read))
- using (var rdr = new OrdinalUtf8NullTerminatedReader(stream))
- {
- string ret;
- while ((ret = rdr.ReadLine()) != null)
- {
- accum += ret.Length;
- }
- }
- return accum;
- }
- [Benchmark]
- public int UseOptimized()
- {
- var accum = 0;
- using (var stream = new FileStream("G:\\output.txt", FileMode.Open, FileAccess.Read))
- using (var rdr = new Utf8NullTerminatedReader(stream, 111))
- {
- string ret;
- while ((ret = rdr.ReadLine()) != null)
- {
- accum += ret.Length;
- }
- }
- return accum;
- }
- }
- internal class Program
- {
- private static void Main(string[] args)
- {
- BenchmarkRunner.Run<Benchmark>();
- }
- }
- }
Add Comment
Please, Sign In to add comment