使用线程池需要注意的事项:
1、线程池中的所有线程都是后台线程 。 如果进程的所有前台线程都结束了,所有的后台线程就会停止。 不能把入池的线程改为前台线程 。
2、不能给入池的线程设置优先级或名称。
3、入池的线程只能用于时间较短的任务。 如果线程要一直运行就应使用Thread类创建一个线程。
=======================================================================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace 线程开启方式_线程池
{
class Program
{
static void Test(object o)
{
Console.WriteLine("线程开始"+Thread.CurrentThread.ManagedThreadId);//读出线程 的ID号
Thread.Sleep(2000);//暂停2000毫秒
Console.WriteLine("线程结束" + Thread.CurrentThread.ManagedThreadId);
}
static void Main(string[] args)
{//连续创建几个线程:
ThreadPool.QueueUserWorkItem(Test);
ThreadPool.QueueUserWorkItem(Test);
ThreadPool.QueueUserWorkItem(Test);
ThreadPool.QueueUserWorkItem(Test);
ThreadPool.QueueUserWorkItem(Test);
ThreadPool.QueueUserWorkItem(Test);
ThreadPool.QueueUserWorkItem(Test);
Console.ReadKey();
}
}
}
运行结果:

浙公网安备 33010602011771号