Cách sử dụng Công cụ Trình phân tích tài nguyên phân bổ

Meggin Kearney
Meggin Kearney

Hãy sử dụng công cụ trình phân tích tài nguyên phân bổ để tìm các đối tượng không được thu thập rác đúng cách và tiếp tục giữ lại bộ nhớ.

Cách công cụ này hoạt động

Trình phân tích tài nguyên phân bổ kết hợp thông tin tổng quan nhanh chi tiết của trình phân tích vùng nhớ khối xếp với hoạt động cập nhật và theo dõi dần của bảng điều khiển Tiến trình. Tương tự như các công cụ này, quá trình phân bổ vùng nhớ khối xếp của các đối tượng theo dõi bao gồm việc bắt đầu ghi, thực hiện một trình tự hành động, sau đó dừng quá trình ghi để phân tích.

Công cụ này sẽ chụp nhanh vùng nhớ khối xếp theo định kỳ trong suốt quá trình ghi (tần suất cứ 50 mili giây một lần!) và một ảnh chụp nhanh cuối cùng khi kết thúc quá trình ghi.

Trình phân tích tài nguyên

Bật trình phân tích tài nguyên

Để bắt đầu sử dụng trình phân tích tài nguyên, hãy làm như sau:

  1. Đảm bảo bạn có phiên bản Chrome Canary mới nhất.
  2. Mở Công cụ dành cho nhà phát triển và nhấp vào biểu tượng bánh răng ở phía dưới bên phải.
  3. Bây giờ, hãy mở bảng điều khiển của Trình phân tích tài nguyên, bạn sẽ thấy một hồ sơ có tên là "Record Heap Allocations" (Ghi lại quá trình phân bổ vùng nhớ khối xếp)

Ghi lại trình phân tích vùng nhớ khối xếp

Đọc hồ sơ phân bổ vùng nhớ khối xếp

Hồ sơ phân bổ vùng nhớ khối xếp cho biết vị trí các đối tượng đang được tạo và xác định đường dẫn giữ lại. Trong ảnh chụp nhanh dưới đây, các thanh ở trên cùng cho biết thời điểm phát hiện thấy đối tượng mới trong vùng nhớ khối xếp.

Chiều cao của mỗi thanh tương ứng với kích thước của các đối tượng được phân bổ gần đây và màu của thanh cho biết các đối tượng đó có còn hoạt động trong ảnh chụp nhanh của vùng nhớ khối xếp cuối cùng hay không. Các thanh màu xanh dương cho biết các đối tượng vẫn còn hoạt động ở cuối tiến trình, thanh màu xám cho biết các đối tượng đã được phân bổ trong tiến trình nhưng đã được thu gom rác:

Tổng quan nhanh về trình phân tích tài nguyên

Trong ảnh chụp nhanh dưới đây, một hành động đã được thực hiện 10 lần. Chương trình mẫu sẽ lưu 5 đối tượng vào bộ nhớ đệm, vì vậy, 5 thanh màu xanh dương cuối cùng dự kiến sẽ xuất hiện. Tuy nhiên, thanh màu xanh dương ở ngoài cùng bên trái cho thấy có vấn đề tiềm ẩn.

Sau đó, bạn có thể sử dụng thanh trượt trong tiến trình ở trên để phóng to vào ảnh chụp nhanh cụ thể đó và xem các đối tượng mới được phân bổ gần đây tại thời điểm đó:

Phóng to ảnh chụp nhanh

Khi nhấp vào một đối tượng cụ thể trong vùng nhớ khối xếp, cây giữ lại của đối tượng đó sẽ xuất hiện ở phần dưới cùng của ảnh chụp nhanh của vùng nhớ khối xếp. Việc kiểm tra đường dẫn giữ lại đến đối tượng sẽ cung cấp cho bạn đủ thông tin để hiểu lý do đối tượng không được thu thập, đồng thời bạn có thể thực hiện các thay đổi mã cần thiết để xoá tham chiếu không cần thiết.

Xem quy trình phân bổ bộ nhớ theo hàm

Bạn cũng có thể xem hoạt động phân bổ bộ nhớ theo hàm JavaScript. Hãy xem bài viết Kiểm tra mức phân bổ bộ nhớ theo hàm để biết thêm thông tin.