Multithreading VisualStudio并发分析提高了线程使用率
我们目前正在尝试使用VisualStudio并发分析器监控c#程序的性能。该程序采用并行处理,首先将数据读入BlockingCollection,然后从第二个BlockingCollection将数据写入数据库表 通常,该程序在一台四核机器上总共使用3个线程。然而,当使用并发探查器(这次是在一个四核虚拟机中)运行时,我们会看到使用了二十个或三十个线程,以及大量的同步(85%)和争用。它也需要四倍的时间才能完成 有没有人见过类似的行为,或者有没有人解释过为什么会发生这种情况?这些差异是否可以由虚拟机而不是并发分析器来解释Multithreading VisualStudio并发分析提高了线程使用率,multithreading,visual-studio,performance,concurrency,core,Multithreading,Visual Studio,Performance,Concurrency,Core,我们目前正在尝试使用VisualStudio并发分析器监控c#程序的性能。该程序采用并行处理,首先将数据读入BlockingCollection,然后从第二个BlockingCollection将数据写入数据库表 通常,该程序在一台四核机器上总共使用3个线程。然而,当使用并发探查器(这次是在一个四核虚拟机中)运行时,我们会看到使用了二十个或三十个线程,以及大量的同步(85%)和争用。它也需要四倍的时间才能完成 有没有人见过类似的行为,或者有没有人解释过为什么会发生这种情况?这些差异是否可以由虚拟