10

Các dụng cụ có thể hình dung các chu kỳ giữ lại theo ARC theo cách đồ họa thú vị. Tôi cũng nhớ rằng một vài ngày trước, tôi đã phát hiện ra chế độ xem "Chu kỳ" trong Dụng cụ do tai nạn.Làm thế nào để kích hoạt báo cáo Chu kỳ trong các thiết bị trong ARC?

Bây giờ tôi bắt đầu sử dụng ARC, đột nhiên tôi không thể tìm thấy điều đó nữa. Các công cụ Allocations và VM Tracker không cung cấp nó, và công cụ Rò rỉ.

Tôi phải làm gì để xem các chu kỳ lưu giữ?

Tìm thấy một ảnh chụp màn hình làm bằng chứng:

enter image description here

Trả lời

10

Sử dụng Xcode 4.2.1, tôi thấy nó trong "Rò rỉ", dưới "Cycles & Roots". Tuy nhiên, tôi thấy nó ít hữu ích hơn khi sử dụng ARC. Nó phát hiện rò rỉ CF và dường như tôi đang bị rò rỉ một khối đệ quy, mà tôi không thể làm bất cứ điều gì về, nhưng tôi đã phải nhổ tận gốc một số chu kỳ giữ lại mà Rò rỉ không bao giờ tìm thấy. Đối với việc tìm kiếm các chu kỳ giữ lại, tôi khuyên bạn nên sử dụng "Phân bổ" và chạy một số ảnh heap giữa việc thực hiện hành động mà bạn nghi ngờ là "rò rỉ". Sau đó, bạn xem qua các ảnh chụp tạm thời để tìm thủ phạm.

+0

Vì vậy, chỉ xuất hiện trong Xcode> 4.2? Tôi không có Lion và chỉ 4,2, nhưng tôi hoàn toàn chắc chắn tôi đã phát hiện "chu kỳ" đã có trong Xcode. Chỉ cần không thể kích hoạt nó nữa. Nó biến mất. –

+0

Thành thật mà nói, tôi không chắc chắn rằng nó có sẵn trong ít hơn 4.2.1, nhưng nó không hữu ích. Tôi đã có một chu kỳ giữ lại rất lớn, nơi hai bộ điều khiển xem được giữ lại chính mình (quên sử dụng __weak), và họ đã có rất nhiều hình ảnh. Rò rỉ không bao giờ phát hiện ra nó. Rất khó chịu, vì vậy bây giờ tôi sử dụng Allocations nhiều hơn. –

+1

@MikhaloIvanokov - Nó nằm trong Xcode 4.2, ngay dưới công cụ Rò rỉ. Bạn phải bấm vào kéo xuống trong bảng điều khiển phía dưới bên trái của từ "Leak Cycles" trong hình ảnh của bạn ở trên, và thay đổi giá trị từ "Rò rỉ" thành "Chu kỳ & Rễ". –

Các vấn đề liên quan