private static void FillByTypeAll(ClassArrayByte arrayByte, int size, string strSize, byte byteFilling) { Console.WriteLine(); Console.WriteLine(@"------------------------------------+---------------------------------"); FillByType(ClassArrayByte.FillType.Parallel, arrayByte, size, strSize, byteFilling); FillByType(ClassArrayByte.FillType.For, arrayByte, size, strSize, byteFilling); FillByType(ClassArrayByte.FillType.EnumerableRepeat, arrayByte, size, strSize, byteFilling); FillByType(ClassArrayByte.FillType.EncodingGetBytes, arrayByte, size, strSize, byteFilling); FillByType(ClassArrayByte.FillType.MemSet, arrayByte, size, strSize, byteFilling); }
private static void PrintByteArraysFilling() { Console.WriteLine(@"----------------------------------------------------------------------"); Console.WriteLine(@"--- Filling byte arrays ---"); Console.WriteLine(@"----------------------------------------------------------------------"); ClassArrayByte arrayByte = new ClassArrayByte(); FillByTypeAll(arrayByte, 1_024, "1 KB", 0x_00); FillByTypeAll(arrayByte, 1_024 * 1_024, "1 MB", 0x_00); FillByTypeAll(arrayByte, 1_024 * 1_024 * 10, "10 MB", 0x_00); FillByTypeAll(arrayByte, 1_024 * 1_024 * 100, "100 MB", 0x_00); }
private static void FillByType(ClassArrayByte.FillType fillType, ClassArrayByte arrayByte, int size, string strSize, byte byteFilling) { var stopWatch = Stopwatch.StartNew(); byte[] bytes; switch (fillType) { case ClassArrayByte.FillType.Parallel: Console.Write(string.Format("{0,-35}", $@"FillByParallel({strSize}, {byteFilling});")); bytes = arrayByte.FillByParallel(size, byteFilling); break; case ClassArrayByte.FillType.For: Console.Write(string.Format("{0,-35}", $@"FillByFor({strSize}, {byteFilling});")); bytes = arrayByte.FillByFor(size, byteFilling); break; case ClassArrayByte.FillType.EnumerableRepeat: Console.Write(string.Format("{0,-35}", $@"FillByEnumerableRepeat({strSize}, {byteFilling});")); bytes = arrayByte.FillByEnumerableRepeat(size, byteFilling); break; case ClassArrayByte.FillType.EncodingGetBytes: Console.Write(string.Format("{0,-35}", $@"FillByParallel({strSize}, {byteFilling});")); bytes = arrayByte.FillByEncodingGetBytes(size, byteFilling); break; case ClassArrayByte.FillType.MemSet: Console.Write(string.Format("{0,-35}", $@"FillByMemSet({strSize}, {byteFilling});")); bytes = arrayByte.FillByMemSet(size, byteFilling); break; } stopWatch.Stop(); Console.WriteLine($@" | Elapsed time: {stopWatch.Elapsed}"); Console.WriteLine(@"------------------------------------+---------------------------------"); }