Потоки и лямбда выражения - C#
Формулировка задачи:
Уважаемые специалисты, помогите пожалуйста в решение данной задачи(условие прикреплено скриншотом, нужно выполнить только пункт d, где нужно использовать лямбда - выражение) Есть примерный вариант, но без лямбда-выражения, а вот с этой лямбдой ну никак не получается, буду безмерно благодарен. Вот код который можно взять за шаблон.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
namespace ConsoleApplication1
{
class Program
{
static int[] AArray;
static void Min()
{ Thread.Sleep(100);
int minValue = AArray.Min();
Console.WriteLine("Минимальное значение: " + minValue);
}
static void Max()
{ Thread.Sleep(100);
int maxValue = AArray.Max();
Console.WriteLine("Максимальное значение: " + maxValue);
}
static int[] Brray()
{
Random rand = new Random();
AArray = new int[100];
for (int i = 0; i < 100; i++)
{
AArray[i] = rand.Next(-50, 50);
Console.WriteLine("{0} элемент: {1}", i, AArray[i]);
}
return AArray;
}
static void Main(string[] args)
{
Console.WriteLine("Задание 3.а");
Console.WriteLine("100 элементов массива:");
Brray();
Thread thread1 = new Thread(new ThreadStart(Min));
Thread thread2 = new Thread(new ThreadStart(Max));
thread1.Start();
Console.WriteLine("Работа потока 1 завершена");
thread2.Start();
Console.WriteLine("Работа потока 2 завершена");
Console.ReadLine();}}}Решение задачи: «Потоки и лямбда выражения»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace ConsoleApplication2 {
class Program {
static int[] intArray = new int[100];
static Random r = new Random();
static void Main(string[] args) {
intArray = Enumerable.Range(0, 100).Select(i => r.Next(-50, 51)).ToArray();
Parallel.Invoke(() => {
GetMax();
},
() => {
GetMin();
});
Console.ReadLine();
}
static void GetMin() {
Thread.Sleep(2000);
Console.WriteLine("Min element is: {0}", intArray.Min());
}
static void GetMax() {
Thread.Sleep(2000);
Console.WriteLine("Max element is: {0}", intArray.Max());
}
}
}