Wpf 滚动查看者作为视频内存管理的主控器
我不知道你们中有多少人观察到了这一点,当我们最小化一个复杂的WPF应用程序时,我们可以观察到所用内存的减少。此外,当我们恢复WPF窗口时,它会重新获得该内存 我的问题是Wpf 滚动查看者作为视频内存管理的主控器,wpf,memory-management,scrollviewer,ui-virtualization,video-memory,Wpf,Memory Management,Scrollviewer,Ui Virtualization,Video Memory,我不知道你们中有多少人观察到了这一点,当我们最小化一个复杂的WPF应用程序时,我们可以观察到所用内存的减少。此外,当我们恢复WPF窗口时,它会重新获得该内存 我的问题是 这就是我们所说的视频存储器吗 我们在WinForms应用程序中也观察到同样的情况吗?我问这个是因为当我最小化MSWord时,我看到它没有做任何类似的事情 另外,如果windows操作系统能够很好地管理这些内存,那么我们为什么不将所有内容虚拟化呢?也就是说,我们为什么不让scroll Viewer成为UI虚拟化的大师呢 我希望我能
我希望我能得到一些有趣的答案。视频内存是完全不同的东西。图形卡使用它来存储纹理、屏幕图像、着色器程序输入/输出等 WPF使用更多的视频内存,因为它使用图形加速、纹理、着色器和屏幕外表面 WinForms应用程序不这样做——它们只使用GDI进行渲染,因此,除非屏幕外发生设计上的事情,否则使用的视频内存要少得多 最后,如果不使用专用工具,就无法测量视频内存。在任务管理器中还原/最小化windows等时看到的任何内存都不是视频内存,而是“常规”内存。实际上,在极低端的系统中,您可能会看到用于视频内存的主系统内存,但更有可能的是,在窗口最小化的情况下,WPF不需要保持尽可能多的内容最新,因此会释放一些对象 因此,我不明白你所说的“如果Windows操作系统能很好地管理内存”是什么意思——虚拟化在某些方面可能很好,但当然也有很多缺点,尤其是WPF,这就是为什么你不会在任何地方都使用它的原因