using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; namespace ParallelLinq { class Program { static void Main(string[] args) { var ec = new Stopwatch(); var oneDimensionalArray = new List(); var twoDimensionalArray = new List(); var r = new Random(); for (int i = 0; i < 90000000; i++) { oneDimensionalArray.Add(r.Next(1, 90000000)); twoDimensionalArray.Add(new int[]{ r.Next(1,900000), r.Next(1,900000) }); } Console.WriteLine("Type for which number are we searching: "); var input = Console.ReadLine(); var searchNumber = Int32.Parse(input); ec.Start(); try { var resultParallel = oneDimensionalArray.AsParallel().Where(x => x == searchNumber).First(); ec.Stop(); Console.WriteLine("Number was found it took {1}, using parallel", resultParallel, ec.Elapsed); } catch(Exception) { ec.Stop(); Console.WriteLine("Number wasnt found it took {0}",ec.Elapsed); } ec.Restart(); try { var resultSeq = oneDimensionalArray.Where(x => x == searchNumber).First(); ec.Stop(); Console.WriteLine("Number was found it took {1}, using seq", resultSeq, ec.Elapsed); } catch (Exception) { ec.Stop(); Console.WriteLine("Number wasnt found, it took",ec.Elapsed); } } } }