1
我完全理解垃圾收集器最終會完成它的工作,並以與任何變量或對象(假設沒有循環引用等)完全相同的方式釋放分配給TypedArray
的內存。在JavaScript中釋放TypedArray內存的最佳方式是什麼?
但是,我在很多WebWorkers
中進行了很多連續處理,因此我希望GC儘快釋放此內存。使用正常的JavaScript
陣列,只需設置array.length = 0;
就可以做到這一點,但使用TypedArray時呢?
以下會導致內存儘快被釋放嗎?
var testArray = new Uint8Array(buffer);
///Do stuff with testArray
tesArray.length = 0;
或者因爲TypedArray簡直是在ArrayBuffer
一個觀點,我需要清除實際緩衝區本身也?如果是這樣,怎麼樣?
爲什麼不使用testArray = null?我看到這種方法被大量使用。 – FailedUnitTest
如果清零數組確實是最好的方法,並且實際上是有效的,那麼很好,我會使用它。但我擔心的是,實際的底層緩衝區本身後來被GC留下並清理乾淨。 – gordyr
好點,我認爲GCs現在足夠聰明來照顧這個。 – FailedUnitTest