我有一个运行在Windows 7/10上的实时视频处理应用程序,它具有4个不同的处理步骤。这些步骤中的每个步骤当前都在WPF任务中运行,并且我已尽可能地避免了视频数据的复制,我只进行了两次复制操作。视频的捕获以及随后的视频存储由基于COM的SDK处理。如果将每个步骤都变成一个单独的exe,并使用共享内存方案在exe之间移动数据,我是否会看到性能的提高?还是使用线程而不是使用WPF任务?任何人都有类似这样的硬数据吗?
谢谢, 道格
答案 0 :(得分:5)
问:将Windows 10应用程序分解为多个exe可以提高并发性吗?
这个问题非常广泛/广泛,但作为通用答案:否
并行/并行性能基于Windows调度程序,该调度程序基于线程及其优先级。这意味着过程无关紧要。您可以有10个进程,每个进程有1个线程,或者1个进程,有10个线程。他们都将以相同的方式安排。 (几乎,有一些例外情况会影响优先级,但不会直接影响整体效果。)