溫馨提示×

c# threadlocal變量如何初始化

c#
小樊
95
2024-11-27 13:54:12
欄目: 編程語言

在C#中,ThreadLocal<T>類用于創建線程局部變量。要初始化一個ThreadLocal<T>變量,您需要創建一個新的實例并為其指定一個默認值(如果需要)。以下是一個簡單的示例:

using System;
using System.Threading;

class Program
{
    // 創建一個ThreadLocal<int>變量
    private static readonly ThreadLocal<int> threadLocalVariable = new ThreadLocal<int>();

    static void Main(string[] args)
    {
        // 在當前線程中設置值
        threadLocalVariable.Value = 10;
        Console.WriteLine("Current thread value: " + threadLocalVariable.Value);

        // 創建一個新線程
        Thread newThread = new Thread(new ThreadStart(ThreadFunction));
        newThread.Start();

        // 等待新線程完成
        newThread.Join();
    }

    static void ThreadFunction()
    {
        // 在新線程中設置值
        threadLocalVariable.Value = 20;
        Console.WriteLine("New thread value: " + threadLocalVariable.Value);
    }
}

在這個示例中,我們創建了一個名為threadLocalVariableThreadLocal<int>變量。然后,我們在主線程和新線程中分別設置了它的值。由于ThreadLocal<T>變量為每個線程提供了獨立的值副本,因此主線程和新線程中的值不會相互干擾。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女