C#多线程的用法10-线程池

TheadPool:在进行多线程编程时,如果不想频繁的创建线程,那可以考虑使用使用线程池来完成多线程编程的工作。你只需将要处理的任务交付给ThreadPool,如果ThreadPool中有空闲的线程,ThreadPool就会将你交付的任务分给一个空闲的线程去执行;如果ThreadPool中没有空闲的线程可用,ThreadPool就会自动新建一个线程来处理你交付的任务。

ThreadPool中的线程也可用本系列文章所讲过的内容进行同步,因此本问仅仅演示Thread Pool的基本用法,希望通过该问能让你掌握ThreadPool的如何使用,之后在实际开发过程中进行更深入的发掘。

private static void MultiThreadWithTheadPool()
        {
            ThreadPool.QueueUserWorkItem(args =>
            {
                for (var i = 0; i < 5; i++)
                {
                    Console.WriteLine(i);
                    Thread.Sleep(200);
                }
            });
            ThreadPool.QueueUserWorkItem(args =>
            {
                for (var i = 10; i < 15; i++)
                {
                    Console.WriteLine(i);
                    Thread.Sleep(200);
                }
            });
        }

说明:到本篇blog为止C#多线程的基本知识就算告一段落了,想在掌握了以上知识后再遇到多线程的开发工作你应该能快速切入。在多线程的实际使用中很多问题,如WinFom开发中修改控件内容等,后续再来慢慢补充。

 

posted @ 2017-08-23 06:49  DW039  阅读(695)  评论(0编辑  收藏  举报