Що таке Thread в C#?
У C# клас Thread надає можливості для роботи з багатозадачністю. Він дозволяє створювати та керувати потоками виконання у додатку. Розглянемо основні концепції та приклад використання класу Thread для паралельного виконання завдань.
Основні моменти:
- Потоки виконання: Потік є шляхом виконання коду в додатку. Багатозадачність дозволяє створювати та запускати кілька потоків для паралельного виконання завдань.
- Створення та запуск потоку: Клас
Threadнадає методи для створення та запуску нових потоків у додатку. - Синхронізація потоків: Важливо враховувати питання синхронізації під час роботи з багатозадачністю для уникнення змагань даних та інших проблем.
class Program
{
static void PrintNumbers()
{
for (int i = 1; i <= 5; i++)
{
Console.WriteLine($"Thread ID: {Thread.CurrentThread.ManagedThreadId}, Number: {i}");
Thread.Sleep(100);
}
}
static void Main()
{
// Створення та запуск нового потоку
Thread newThread = new Thread (PrintNumbers);
newThread.Start();
// Виконання основного потоку
for (int i = 1; i <= 5; i++)
{
Console.WriteLine($"Main Thread ID: {Thread.CurrentThread.ManagedThreadId}, Number: {i}");
Thread.Sleep(150);
}
// Очікування завершення нового потоку
newThread.Join();
Console.WriteLine("All threads completed.");
}
}
Коментарі