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

Свойство IsBackground

IsBackground задают до Start. По умолчанию новый Thread не фоновый. Join всё равно дожидается конца работы. Фоновый поток не держит процесс, если все обычные уже вышли.

Синтаксис

thread.IsBackground = true; bool background = thread.IsBackground;

Пример

Давайте прочитать значение у нового потока:

using System; using System.Threading; class Program { static void Main() { var thread = new Thread(() => { }); bool res = thread.IsBackground; Console.WriteLine(res); } }

Результат выполнения кода:

False

Пример

Давайте включить фоновый режим до Start:

using System; using System.Threading; class Program { static void Main() { var thread = new Thread(() => { }); thread.IsBackground = true; bool res = thread.IsBackground; Console.WriteLine(res); } }

Результат выполнения кода:

True

Пример

Давайте дождаться фонового потока через Join:

using System; using System.Threading; class Program { static void Main() { string text = ""; var thread = new Thread(() => { text = "abcde"; }); thread.IsBackground = true; thread.Start(); thread.Join(); string res = text; Console.WriteLine(res); } }

Результат выполнения кода:

"abcde"

Смотрите также

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