C# 中的 Gecfofx 22.0 使用大量计算机内存

本文关键字:计算机 内存 中的 Gecfofx | 更新日期: 2023-09-27 18:32:21

我已经在我的c#应用程序(VS 2008)中从bitbucket实现了Geckofx 22.0。它运行良好,但唯一的问题是内存消耗。运行应用程序时会使用大量计算机内存。我的应用程序必须播放一些本地 flv 以及 swf 文件。

请向我建议一些有关如何减少内存消耗的解决方案?

C# 中的 Gecfofx 22.0 使用大量计算机内存

您可以尝试定期调用 nsIMemory.HeapMinimize:

例如:

if (_memoryService == null)
  _memoryService = Xpcom.GetService<nsIMemory>("@mozilla.org/xpcom/memory-service;1");              
_memoryService.HeapMinimize(true);
           [DllImport("kernel32.dll", SetLastError = true)]
    private static extern int SetProcessWorkingSetSize(IntPtr process, int minimumWorkingSetSize, int maximumWorkingSetSize);

    public void ClearGarbage()
    {
        GC.Collect();
        GC.WaitForPendingFinalizers();
        SetProcessWorkingSetSize(System.Diagnostics.Process.GetCurrentProcess().Handle, -1, -1);
    }