【问题标题】:Maximize program responsiveness最大限度地提高程序响应能力
【发布时间】:2010-07-12 16:04:48
【问题描述】:

我有一个程序可以用来替代 alt-tab。我是用 .NET 编写的,因此它占用了大量内存。由于我只是偶尔使用它,它往往会被分页。所以当我调用它时,它通常需要几秒钟才能显示出来。这很烦人。有没有办法防止它被分页以便总是立即出现?

我总是可以用更轻量级的语言编写它,但有没有解决方案?

【问题讨论】:

    标签: c# optimization memory


    【解决方案1】:

    一个肮脏的技巧是在其中放置一个计时器,它会不时触发一些无用(空)的计算,以防止(恢复)分页。

    【讨论】:

    • 嗯。我想如果我创建了一些适当的 WinForms 对象并将其放置在计时器上,它会将适当的页面保留在内存中。但我必须测试一下才能找到合适的。哦,也许也可以进行 GC 以将堆保留在内存中。
    • 只需让定时器处理程序改变主窗体的一些不可见属性,从而强制 it 在内存中。
    【解决方案2】:

    在您的计算机中放置大量内存。任何涉及软件开发的解决方案都不太可能比这更便宜。

    【讨论】:

      【解决方案3】:

      我们无法直接控制 C# 中的 VM。可以使用一些高级的东西来连接 VM,比如 p/invoking 你用 C++ 编写的东西(Hans Passant 可能会告诉你这一切)。您还可以针对 x64 进行编译并在具有足够 RAM 的 64 位系统上运行并禁用 VM(我不建议在上限为 4GB 的 32 位系统上禁用 VM)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-08-27
        • 1970-01-01
        • 2016-04-03
        • 2011-07-04
        • 1970-01-01
        • 1970-01-01
        • 2021-04-12
        • 1970-01-01
        相关资源
        最近更新 更多