c# AsyncLocal ThreadLocal ExecutionContext

using System;
using System.Threading;

namespace Cmd
{
    class Program
    {
        static void Main(string[] args)
        {
            var asynclocal = new AsyncLocal<int>();
            var threadlocal = new ThreadLocal<int>();

            asynclocal.Value = 1;
            threadlocal.Value = 2;

            //ExecutionContext.SuppressFlow();

            var timer = new Timer(state =>
            {
                Console.WriteLine("Task Threading num: {0}, state: {1}, asynclocal: {2}, threadlocal: {3}", Thread.CurrentThread.ManagedThreadId, state, asynclocal.Value, threadlocal.Value );
            }, 1, TimeSpan.FromSeconds(0), TimeSpan.FromSeconds(1));

            //ExecutionContext.RestoreFlow();

            Thread.Sleep(20000);

            Console.WriteLine("Hello World!");
        }
    }
}

c# AsyncLocal<T> ThreadLocal<T> ExecutionContext

上一篇:C# 实习生成器


下一篇:win10 chrome 百分浏览器 centbrowser 收藏夹栏字体突然变小