首页 > 代码库 > C#多线程方法同步

C#多线程方法同步

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading;using System.Runtime.CompilerServices;namespace TestMethodSynchronized{    class SyncHelper    {        static int cnt = 0;        [MethodImpl(MethodImplOptions.Synchronized)]        public static void Execute(object state)        {            int t = cnt;            Console.WriteLine("ThreadId:{2,-5}, Sate:{1},Excute at {0},计时器:{3}", DateTime.Now, state.ToString(),                Thread.CurrentThread.ManagedThreadId, t);            Thread.Sleep(500);            ++t;            cnt = t;        }    }    class Program    {        static void Main(string[] args)        {            for (int i = 0; i < 10; i++)            {                ThreadPool.QueueUserWorkItem(SyncHelper.Execute,i);            }            Console.WriteLine("done.");            Console.ReadKey();        }    }}