Каждая нить поочередно формирует и печатает три числа a, b и c - C#

Узнай цену своей работы

Формулировка задачи:

Синхронизировать три нити одного процесса с помощью оператор lock. Каждая нить поочередно формирует и печатает три числа a, b и c. Числа первой нити формируются в диапазоне от 10 до 19, второй нити – от 20 до 29 и третьей нити – от 30 до 39. Печать чисел каждой нитью производится по диагонали сверху вниз и слева направо (печать каждой нити занимает три строки) в продолжение печати предыдущей нити

Решение задачи: «Каждая нить поочередно формирует и печатает три числа a, b и c»

textual
Листинг программы
  1. using System;
  2. using System.Linq;
  3. using System.Threading;
  4.  
  5. class Program
  6. {
  7.     private static object locker = new object();
  8.  
  9.     public static void ThreadFunction(object n)
  10.     {
  11.         lock (locker)
  12.         {
  13.             Console.WriteLine(String.Join(", ", Enumerable.Range((int)n, 10)));
  14.         }
  15.     }
  16.  
  17.     public static void Main()
  18.     {
  19.         for (int i = 10; i <= 30; i += 10)
  20.         {
  21.             new Thread(ThreadFunction).Start((object)i);
  22.         }
  23.     }
  24. }

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


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

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

15   голосов , оценка 3.733 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы