New empty iOS app has dozens of memory leaks

2020-07-09 09:00发布

Using the Leaks Instruments tool on a new, from-scratch, one-view iOS app reports 23 leaks. This doesn't seem right — am I missing something? Repeated runs yield different leak counts, from 16 to 35. Steps to reproduce follow this screenshot.

A similar, unanswered question, was posted at Memory leak in login with amazon sample ios app

Screenshot of Instruments window

I'm using Xcode 10.2.1 (10E1001); iOS 12.2 (Simulator & device both show leaks, with or without Reveal activated.)

  1. Create fresh one-view iOS app.
  2. In Scheme > Run/Debug section, enable
    • Memory Management > Malloc Scribble
    • Logging > Malloc Stack (Live Allocations Only)
  3. Run Product > Profile (⌘I)
  4. First leak check is green; wait for second one.
  5. Twenty-three new leaks! (As shown above.)

However, apart from Instruments, Debug Navigator disagrees:

  1. Run normal debug session
  2. Click "Debug Memory Graph" at top of Debug area.
  3. Debug Navigator (below) has no purple exclamation marks (leak alerts).

Screenshot of Debug Navigator

1条回答
爷、活的狠高调
2楼-- · 2020-07-09 09:38

The release notes for Xcode 10.3 say:

Resolved an issue where running an app in iOS 12.2 or later under the Leaks instrument resulted in random numbers of false-positive leaks for every leak check after the first one in a given run

That sounds exactly like this issue. So it was a bug (a Heisenbug?), and now it’s fixed.

查看更多
登录 后发表回答