欢迎来到君叶的博客

人生三从境界:昨夜西风凋碧树,独上高楼,望尽天涯路。 衣带渐宽终不悔,为伊消得人憔悴。 众里寻他千百度,蓦然回首,那人却在灯火阑珊处。

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)
{
//耗时业务处理
//推送数据
}

posted on 2022-08-02 18:41  君叶  阅读(271)  评论(0)    收藏  举报

导航