Example #1
0
        static void Main(string[] args)
        {
            ThreadWrapper[] threads = new ThreadWrapper[]
            {
                new ThreadWrapper()
                {
                    Priority = ThreadPriority.Highest
                },
                new ThreadWrapper()
                {
                    Priority = ThreadPriority.Lowest
                },
                new ThreadWrapper()
                {
                    Priority = ThreadPriority.Normal
                }
            };

            foreach (var e in threads)
            {
                e.Start();
            }

            Console.WriteLine();
        }
Example #2
0
        static void Main(string[] args)
        {
            Console.InputEncoding = Encoding.Unicode; Console.OutputEncoding = Encoding.Unicode;
            int arg = 1_000_000_000;

            ThreadWrapper[] threads = new ThreadWrapper[]
            {
                new ThreadWrapper(1, arg)
                {
                    Priority = ThreadPriority.Lowest
                },
                new ThreadWrapper(2, arg)
                {
                    Priority = ThreadPriority.Normal
                },
                new ThreadWrapper(3, arg)
                {
                    Priority = ThreadPriority.Lowest
                }
            };

            //foreach (var e in threads) e.Start();
            threads[0].Start();             // Highest
            threads[1].Start();             // Normal
            threads[2].Start();             // Lowest

            foreach (var e in threads)
            {
                e.t.Join();
            }

            Console.WriteLine();
            int ashow = arg;

            Stopwatch s = new Stopwatch();

            s.Start();
            while (arg != 0)
            {
                arg--;
            }

            Console.InputEncoding = Encoding.Unicode; Console.OutputEncoding = Encoding.Unicode;
            s.Stop();
            Console.WriteLine($"\nWhile {ashow:N0} cycle took {s.ElapsedTicks:N0} ticks"
                              + $" Elapsed {s.ElapsedMilliseconds} ms "
                              );
        }