Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 太多的任务会降低UI线程的速度_C#_.net_Task - Fatal编程技术网

C# 太多的任务会降低UI线程的速度

C# 太多的任务会降低UI线程的速度,c#,.net,task,C#,.net,Task,我该怎么做才能使后台任务的优先级低于UI线程 我有一个项目列表,每个项目的一些数据都是在后台计算的。每次计算我都使用任务,因此UI线程不会受到影响 然而,我意识到,如果我有很多项>50,UI线程仍然会受到影响。例如,列表不能平滑滚动 看起来,大量的任务占用了UI线程的CPU时间 我不想从任务切换到线程,因为任务非常方便。一定有办法 请显示一些代码,最好是一个显示不希望出现的行为的最小示例。如果结果显示生成了太多线程,您可以使用来限制线程的数量。请参见:后台线程是否通过Invoke/BeginIn

我该怎么做才能使后台任务的优先级低于UI线程

我有一个项目列表,每个项目的一些数据都是在后台计算的。每次计算我都使用任务,因此UI线程不会受到影响

然而,我意识到,如果我有很多项>50,UI线程仍然会受到影响。例如,列表不能平滑滚动

看起来,大量的任务占用了UI线程的CPU时间


我不想从任务切换到线程,因为任务非常方便。一定有办法

请显示一些代码,最好是一个显示不希望出现的行为的最小示例。如果结果显示生成了太多线程,您可以使用来限制线程的数量。请参见:后台线程是否通过Invoke/BeginInvoke将大量信息传递回GUI线程?您真的需要为每个项目分配一个任务,还是不能让一个任务处理多个任务?