2017-12-29 97 views
6

Tôi có một băm lớn chứa khoảng 10 năm dữ liệu thống kê hàng ngày. Có cách nào trong Perl 6 để xác định dung lượng bộ nhớ thực (bằng byte) mà băm này đang sử dụng (ví dụ: showMemoryUsed(%myBigHash)). Ngay cả khi %myBigHash trống, nó không phải là 0 byte vì bộ nhớ được sử dụng và việc triển khai Perl 6 của kiểu dữ liệu băm. Thông tin này sẽ cho tôi biết nếu tôi cần phải thực hiện lại mã của tôi hoặc định kỳ ghi vào tập tin để giảm bớt tình trạng thiếu RAM (chương trình của tôi đang chạy trên một Linux ảo với RAM 2G).Hiển thị số lượng bộ nhớ mà cấu trúc dữ liệu đang sử dụng

Cảm ơn.

Trả lời

5

Than ôi, chúng tôi chưa có điều gì giống như vậy trong Rakudo Perl 6. Điều duy nhất tôi có thể giới thiệu, đang sử dụng các mô-đun Telemetry:

use Telemetry; 
my $before = T<max-rss>; 
my %h = ...; # initialize hash 
say "Memory usage grew { T<max-rss> - $before } KB"; 

Kiểm tra các tài liệu hướng dẫn Telemetry để biết thêm thông tin: https://docs.perl6.org/type/Telemetry

+0

Cảm ơn bạn Elizabeth Mattijsen để làm rõ của bạn !! Tôi sẽ kiểm tra mô-đun từ xa. – lisprogtor

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