Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpCcJn 357 of 509 menu
◀ ▶

Ожидание Join в C#

Метод Join блокирует текущий поток, пока целевой Thread не завершит выполнение делегата. Так главный поток дожидается результата второго потока в общем поле.

Повторный Join на уже завершённом потоке возвращается сразу. Join не возвращает значение, а только синхронизирует по времени. Само число передают через общую переменную.

Поток запишет в shared число 3, главный дождётся его конца и прочитает итог. Без ожидания Console.WriteLine мог бы выполниться раньше присвоения и вывести 0:

int shared = 0; Thread w = new(() => shared = 3); w.Start(); w.Join(); Console.WriteLine(shared); // выведет 3

Запустите поток, который записывает в общее поле строку "done". Дождитесь завершения потока и выведите это поле.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить