Потоки и лямбда выражения - 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());
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5
Похожие ответы