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

Giải thích cách autorelease hoạt động ở runtime level trong iOS?

senior

Trong lập trình iOS, làm sao để thực hiện unit test và UI test hiệu quả với XCTest?

senior

Làm sao để bảo vệ code Swift không bị reverse engineering khi phát hành lên App Store?

Bình luận

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

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