Can I limit the IDE to 2GB?
Delphi Seattle IDE 最多可使用 4GB 内存,即使 BDS.exe 是 32 位程序。
这对于大型项目来说非常好,但是在编译一个小项目时,有时 IDE 会出现问题并开始消耗所有可用内存。
当它被限制为 2GB 时,它很快就会自行解决,我会得到一个 out of memory error;重新启动 IDE,一切都很好。
但是,当在具有 4GB 物理 RAM 的 PC 上运行西雅图时,内存不足的情况会将 PC 锁定 10 分钟或更长时间,因为磁盘开始被丢弃。
有没有办法在内部 RAM 很少的 PC 上将 IDE 切换回 2GB?
- 如果您使用西雅图更新 1,您需要修补程序 cc.embarcadero.com/item/30453
-
@kami,谢谢,但由于编译器错误,问题是内存不足。因此,该修补程序实际上并不能解决问题。
-
尝试在 XP/Vista 兼容模式下运行 IDE,其中 GlobalMemoryStatus2GB 是垫片之一。我怀疑 IDE 会要求系统内存并采取相应的行动,但值得一试。
-
@SertacAkyuz,有趣的概念,会尝试。
-
呃...在具有 4GB RAM 和旋转磁盘的 PC 上开发?为什么哦为什么?更多的 RAM 和 SSD 几乎没有任何成本,它可以为您节省大量时间和挫败感。即使你的报酬不高,投资一个合理规范的开发系统也会在几周内收回成本,因为它会为你节省时间。真的没有理由为不足的硬件而苦苦挣扎。
-
将优先级更改为空闲怎么样?我认为当您开始注意到内存压力时,它可以让您更轻松地进行干预和恢复。
-
另一个虽然有点冒险的选择是禁用虚拟内存。它颠簸的原因是因为它交换到磁盘以获取虚拟内存。我们有许多禁用虚拟内存的测试机器。如果您的内存不足,那么您会收到一个错误指示。
我们在虚拟机上安装了 Delphi。在那里你可以很容易地限制内存。虚拟机也不会阻塞整个计算机。主要优点是您可以从网络中的任何计算机进行访问。
您所要求的没有配置开关。 IDE 可执行文件在其 PE 标头中标记为大地址感知。唯一的选择是使用 PE 编辑工具从可执行文件中删除该标志。
但是更改磁盘上的 exe 会触发复制保护并关闭 IDE。
- 但这可能会使数字签名无效,从而触发复制保护。我建议确保您有更新 1,它修复了句柄泄漏,并且只关注任务管理器和强制终止。另外,这有QP吗?
-
也许你可以找到去保护的EXE。由于您合法购买了应被视为兼容性工作的 IDE
-
@DavidM,跟踪内存使用情况毫无意义,当我注意到 PC 已经变得紧张时,内存失控是如此突然。只需几分钟即可响应 CTRL ALT DEL。
-
哇。我从未见过这种行为;有QP报告吗?每个项目都会发生这种情况还是只有一个?如果只有一个,您可以私下将您的代码提交给 Emb 以帮助他们进行诊断。