【问题标题】:ReportMemoryLeaksOnShutdown and FireMonkey applicationReportMemoryLeaksOnShutdown 和 FireMonkey 应用程序
【发布时间】:2011-12-29 17:35:21
【问题描述】:

我今天尝试创建 FireMonkey 应用程序并将 ReportMemoryLeaksOnShutdown 添加到项目文件以检测内存泄漏,但这在 FireMonkey 中不起作用。你能告诉我,有什么问题吗?这是某种错误吗?

我在项目文件中的代码:

  {$IFDEF DEBUG}
  ReportMemoryLeaksOnShutdown := True;
  {$ENDIF}


  Application.Initialize;
  Application.CreateForm(TfrmMain, frmMain);
  Application.Run;

我的代码必须产生内存泄漏:

procedure TfrmMain.Button1Click(Sender: TObject);
var
  lStrings: TStringList;

begin
  lStrings := TStringList.Create;
  lStrings.Add('test');

  ShowMessage(lStrings.CommaText);
end;

我激活了调试配置,但没有报告任何内存泄漏。

【问题讨论】:

  • 在 XE2 Update 2 中运行代码会显示“意外内存泄漏”对话框。当然,在按下按钮并关闭应用程序之后。尝试在没有 $ifdef 调试的情况下运行您的代码
  • 如果我在没有调试条件的情况下运行没有区别。也许 Update2 解决了这个问题,因为我在 Update1 上。
  • @evilone,我在 Mac OS 上也遇到了同样的问题,我正在运行更新 2。没有关于 Mac 关机的报告。它会在针对 32 位 Windows 时显示。
  • 一旦你开始工作,你会发现 FMX 像筛子一样漏水,至少 Chris Rolliston 说。
  • @David:ReportMemoryLeaksOnShutdown 仅适用于 Windows(基本上是 FastMM),而 Chris Rolliston 仅谈到了 OS X 泄漏。

标签: delphi memory-leaks delphi-xe2 firemonkey


【解决方案1】:

看来更新 2 已经解决了这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    相关资源
    最近更新 更多