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

Свойство ManagedThreadId

ManagedThreadId больше нуля, но конкретное число зависит от процесса - его не выводят. Берут у CurrentThread. На одном потоке два чтения совпадают.

Синтаксис

int id = thread.ManagedThreadId;

Пример

Давайте проверить, что идентификатор положительный:

using System; using System.Threading; class Program { static void Main() { bool res = Thread.CurrentThread.ManagedThreadId > 0; Console.WriteLine(res); } }

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

True

Пример

Давайте дважды прочитать ManagedThreadId:

using System; using System.Threading; class Program { static void Main() { int a = Thread.CurrentThread.ManagedThreadId; int b = Thread.CurrentThread.ManagedThreadId; bool res = a == b; Console.WriteLine(res); } }

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

True

Пример

Давайте сравнить идентификатор в дочернем потоке с двумя чтениями там же:

using System; using System.Threading; class Program { static void Main() { bool same = false; var thread = new Thread(() => { int x = Thread.CurrentThread.ManagedThreadId; int y = Thread.CurrentThread.ManagedThreadId; same = x == y; }); thread.Start(); thread.Join(); bool res = same; Console.WriteLine(res); } }

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

True

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

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