TGViewer
.NET Разработчик .NET Разработчик @netdeveloperdiary · 6.76K subscribers
Post #2247 2.88K
День 1858. #Шпаргалка
Примеры Кода для Повседневных Задач

В этой серии представлю вам коллекцию фрагментов кода C#, охватывающих широкий спектр сценариев, с которыми вы можете столкнуться при разработке ПО.

IV. Потоки
Многопоточная обработка — важный аспект параллельного программирования на C#. Рассмотрим, как работать с потоками, используя пространство имен System.Threading.

1. Создание нового потока
Чтобы создать новый поток в C#, вы можете использовать класс Thread:
using System.Threading;

void PrintNumbers()
{
for (int i = 1; i <= 5; i++)
Console.WriteLine(i);
}

var thread = new Thread(PrintNumbers);


2. Операции над потоком
- Запуск
thread.Start();

- Слияние (ожидание завершения потока)
thread.Join();

- Приостановка (текущий поток)
Thread.Sleep(1000); // пауза на 1 секунду

См. подробнее о потоках

3. Использование пула потоков
Для работы с пулом потоков используется класс ThreadPool:
using System.Threading;

ThreadPool.QueueUserWorkItem(PrintNumbers);

См. подробнее о пуле потоков

V. Задачи
1. Создание новой задачи

Для создания и запуска задачи используется класс Task:
using System.Threading.Tasks;

Task.Run(PrintNumbers);

См. подробнее о задачах

2. Ожидание задачи
var task = Task.Run(PrintNumbers);
task.Wait();


3. Отмена задачи
Для отмены задачи в C# используется класс CancellationTokenSource, создающий токен отмены. А для собственно отмены – метод токена Cancel():
using System.Threading;
using System.Threading.Tasks;

var cts = new CancellationTokenSource();
Task.Run(() => PrintNumbers(), cts.Token);
cts.Cancel();

См. подробнее «Скоординированная отмена»

Источник: https://medium.com/bytehide/100-csharp-code-snippets-for-everyday-problems-e913c786dec9
  • 👍 14
More from @netdeveloperdiary
  1. Oct 8, 2026День 2808. #Карьера 5 Навыков, Которые Помогут Быстрее Стать Сеньором. Начало В ИТ есть се…
  2. Oct 7, 2026День 2807. #ЗаметкиНаПолях Типы Коллекций в .NET, Которые Стоит Попробовать. Окончание Нач…
  3. Oct 6, 2026🦈 Открытое собеседование на Middle C# | 6 октября, 19:00 МСК Приглашаем на открытое собес…
  4. Oct 6, 2026День 2806. #ЗаметкиНаПолях Типы Коллекций в .NET, Которые Стоит Попробовать. Начало Больши…
  5. Oct 5, 2026День 2805. #ЧтоНовенького #NET11 Аргументы в Выражениях Коллекций в C#15 В C#15 реализован…
  6. Oct 4, 2026День 2804. #ВопросыНаСобеседовании Марк Прайс предложил свой набор из 60 вопросов (как тех…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →