Câu hỏi phỏng vấn IOS
Câu hỏi

Trong iOS, bạn xử lý bộ nhớ như thế nào để tránh retain cycle khi dùng closures?

Câu trả lời

Để tránh retain cycle khi sử dụng closures trong iOS, bạn cần sử dụng từ khóa [weak] hoặc [unowned] để khai báo các weak reference đến self bên trong closure.

Khi một closure giữ một strong reference đến một đối tượng, và đối tượng này cũng đồng thời giữ một strong reference đến closure, sẽ tạo nên một retain cycle, dẫn đến việc cả hai không thể được giải phóng khỏi bộ nhớ.

[weak self] được sử dụng khi bạn muốn đối tượng bên trong closure có thể được giải phóng khi không còn được sử dụng, vì self có thể bằng nil nếu đối tượng bị giải phóng. **[u...

middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Bạn dùng UserDefaults như thế nào trong lập trình iOS? Khi nào thì không nên dùng?

middle

Khi lập trình iOS, bạn debug memory leak bằng công cụ nào?

senior

Khi scale một app iOS có hàng triệu người dùng, bạn tổ chức kiến trúc client-side như thế nào?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào