C#程序执行时间长查询速度慢解决方案
一,程序执行慢导致的原因就是查询数据库慢.,导致返回值慢,那这个要怎么解决呢?
1,优化数据库查询如这个文章C#导出数据到excel如何提升性能
2,使用线程并行查询,然后合并成一个集合,代码如下,必须留意备注的核心点
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Diagnostics;
usingSystem.Linq;
usingSystem.Threading;
usingSystem.Threading.Tasks;
namespaceTestConsoleApp
{
///
///C#慢查询解决:线程并行实现处理
///
classProgram
{
staticvoidMain(string[]args)
{
ListtaskList=newList();
intcount=100;
intbatch=count%10;
objectlockObj=newobject();
Listlist=newList();
///开启线程并行执行
Stopwatchstopwatch=newStopwatch();
stopwatch.Start();
for(inti=0;i
{
for(intj=count*i;ju).ToList();
Console.WriteLine(stopwatch.ElapsedMilliseconds);
Console.WriteLine("**********分割线***********");
///原始遍历实现
Listlist2=newList();
Stopwatchstopwatch2=newStopwatch();
stopwatch2.Start();
for(inti=0;i
PS:核心点
1》线程等待线程结束Task.WaitAll
2》锁住集合,以防插入占用导致报错
3》结果需要排序,因为并行线程的结果是乱序的
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。