Net Core教程

C# 线程池队列使用

本文主要是介绍C# 线程池队列使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

// 推送大批量数据
static void ThreadPool_Sync(List listCUniqueCode, int UserID)
{
ThreadPool.SetMinThreads(1, 1);//最少线程数和最少I/O
ThreadPool.SetMaxThreads(10, 10);//最大线程数和最大I/O

//Log4日志记录
log.Info("推送数量:"+listCUniqueCode.Count);

for (int i = 0; i < listCUniqueCode.Count; i++)
{
    //超过10个线程时,排队等待前面的线程执行完,有闲置的线程时再接着执行,业务复杂程度不一,执行顺序无法确定
    ThreadPool.QueueUserWorkItem(new WaitCallback(SyncUserInfoByCUniqueCode), listCUniqueCode[i]);
}

}

// 具体业务处理
static void SyncUserInfoByCUniqueCode(object CUniqueCode)
{
//耗时业务处理
//推送数据
}

这篇关于C# 线程池队列使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!