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