示例#1
0
 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);
 }
示例#2
0
        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);
        }
示例#3
0
        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(@"------------------------------------+---------------------------------");
        }