Hãy làm cho nó rõ ràng ngay lập tức: đây không phải là một câu hỏi về rò rỉ bộ nhớ! Tôi có một trang cho phép người dùng nhập một số dữ liệu và một JavaScript để xử lý dữ liệu này và tạo ra kết quả. JavaScript tạo ra gia tăng trên một DIV, một cái gì đó như thế này:javascript để tìm bộ nhớ có sẵn
(function()
{
var newdiv = document.createElement("div");
newdiv.innerHTML = produceAnswer();
result.appendChild(newdiv);
if (done) {
return;
} else {
setTimeout(arguments.callee, 0);
}
})();
Trong những trường hợp nhất định việc tính toán sẽ tạo ra dữ liệu nhiều đến nỗi IE8 sẽ thất bại với tin nhắn này:
không đủ lưu trữ khi xử lý quá nhiều dữ liệu
Câu hỏi đặt ra là: có cách nào tôi có thể tính lượng dữ liệu quá nhiều không?
như tôi đã nói không có lỗi để giải quyết. Đó là một bộ nhớ chính hãng vì tính toán yêu cầu tạo quá nhiều phần tử html.
Ý tưởng của tôi là chạy một hàm trước khi thực hiện tính toán để tiến hành nếu trình duyệt thành công. Nhưng để làm như vậy, theo một cách chung chung, tôi nghĩ rằng tôi cần phải tìm bộ nhớ có sẵn cho trình duyệt của tôi.
Bất kỳ đề xuất nào đều được hoan nghênh.
với dữ liệu rất nhiều, không thể cho người dùng thậm chí đối phó? – jldupont
Công cụ có hoạt động để bao quanh mã với try/catch không? – erikkallen
'memory.performance.usedJSHeapSize' chỉ hoạt động tốt trong Chrome ngay bây giờ. –