~/talk

Finding Retain Cycles for Objective-C with Pulse

Talkat Infer 2024 · on Monday, 2024-06-24· [testing, ios]
links:none on file
slides:none on file

Built a Pulse-based checker that finds Objective‑C retain cycles by walking the Pulse abstract heap and requiring all references in a cycle to be strong; closures are modeled as objects with captured variables as fields so block captures become heap edges. The checker reports cycles as soon as they appear (trading more reports for occasional false positives), adds a reported retain cycle attribute to avoid duplicates, and fixes missing weak/strong info by storing a boolean on fields—raising detection to 100% on known tests.

AI-written summary · about

  1. 0:00Pulse and retain cycles
  2. 3:40Retain cycle checker
  3. 10:04Strong and weak references
  4. 13:18Cycles with Objective-C blocks
  5. 14:22Testing false positives
  6. 17:56False negatives and limits
  7. 21:36Cycle detection beyond two
  8. 22:49Swift and other languages
  9. 24:39Real-world impact
  10. 27:17IDE integration
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.