Detect memory leaks in iPhone app
เรื่อง memory management ในภาษา Objective-C เป็นสิ่งที่น่าปวดหัวของโปรแกรมเมอร์สายตลาด (Java/C#) เมื่อมาจับสายอินดี้ใหม่ๆ – ต้อง alloc init, retain, release ในขณะที่เมื่อก่อน new ก็จบ ปล่อยให้ Garbage Collector จัดการให้เสร็จศัพท์ เวลาที่ release หรือ dealloc เพลินๆไปหน่อย จะเกิดอาการ exc_bad_access ทำให้ต้องแก้ปัญหาด้วย retain หรือไม่ยอม release ดื้อๆไปเลย – ซึ่งเป็นสาเหตุของ “เมมรั่ว” หรือ memory leaks นั่นเอง หากรั่วไม่เยอะเราก็อาจจะไม่รู้ตัว จนกระทั่งมัน crash ตอน user ใช้ไปนานๆนั่นแหละ วิธีแก้ปัญหานี้มีสองแบบใหญ่ๆ คือใช้ LLVM/Clang Static Analyzer หรือใช้ Instruments app ของ [...]
Category Archive: Mobile Dev