zoukankan      html  css  js  c++  java
  • 多线程之搬运货物1:不分堆搬

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading;

    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                Program p = new Program();
                p.Move();
                Console.ReadLine();
            }

            List<string> productList = new List<string>() { "AAAA""BBBB""CCCC""DDDD""EEEE" };//货物
            
            private void Move()
            {
                for(int i = 1; i<= 10;i++)
                {
                    productList.Add(i.ToString());
                }

                ThreadPool.SetMaxThreads(1010);
                lock (this)
                {
                    while (productList.Count > 0)
                    {
                        lock (this)
                        {
                            ThreadPool.QueueUserWorkItem(new WaitCallback(RealMove),productList[0]);
                            productList.RemoveAt(0);
                        }
                    }
                }
            }

            private void RealMove(object product)
            {
                System.Threading.Thread.Sleep(1000);
                Console.WriteLine("货物" + product.ToString() + "已经被成功送达目的地!" + System.DateTime.Now.ToString());//YYYY-MM-DD HH-MM-mm
            }
        }
    }
  • 相关阅读:
    你是老鸟吗?但是有些你可能目前都不知道的东西
    工具类合集
    也谈Flash mmorpg地图问题【转】
    大量实用工具类、开源包,该帖绝对值得你收藏!
    如何设计产品【页游】
    网络游戏中,玩家常常询问什么时候开新服,其中的本质需求是什么?
    大将军UE分析
    天天连萌UE分析
    selenium IDE 回放报错
    jenkins配置
  • 原文地址:https://www.cnblogs.com/pnljs/p/3523691.html
Copyright © 2011-2022 走看看