zoukankan      html  css  js  c++  java
  • 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();
            }
        }
    }
    

      

  • 相关阅读:
    iPhone iPad发展史
    iOS 学习
    iOS 学习
    iOS 学习
    iOS 学习
    iOS 学习
    iOS 学习
    iOS 学习
    iOS 学习
    iOS 学习
  • 原文地址:https://www.cnblogs.com/wucg/p/3899659.html
Copyright © 2011-2022 走看看