c#的线程池,第一次用

本文演示了如何使用C#中的线程池来并行执行多个任务,包括文件处理任务和等待回调方法。通过设置最大线程数并排队用户工作项,展示了线程池管理并发操作的方法。
static void ThreadFileDeal(object i)
        {


            string strGet = (string)i;
            for (int a = 0; a < 5; a++)
            {
                Console.WriteLine(Thread.CurrentThread.ManagedThreadId.ToString() + strGet);
                Thread.Sleep(1000);
            }
                
        }


        static void WaitCallBackMethod(object param)
        {
            for (int i = 0; i < 5; i++)
            {
                Console.WriteLine(String.Format("Thread {0} is running", param));
                Thread.Sleep(1000);
            }
        }




        static void Main(string[] args)
        {
            int ncount = 0;
           while(ncount<100)
            {
                ncount++;
                ThreadPool.SetMaxThreads(20, 20);


                ThreadPool.QueueUserWorkItem(WaitCallBackMethod, ncount);//第一个启动的方法
                ThreadPool.QueueUserWorkItem(ThreadFileDeal,"temp");//第二个启动的方法
            }
             Console.Read();


        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值