2
WebAssembly程序以固定数量的虚拟内存开始,并可以request additional memory at runtime。他们也鼓励discard unused physical pages。可以长时间运行,糟糕的WebAssembly程序leak memory?这最终会导致WebAssembly程序崩溃吗?WebAssembly程序能否泄漏内存?
WebAssembly程序以固定数量的虚拟内存开始,并可以request additional memory at runtime。他们也鼓励discard unused physical pages。可以长时间运行,糟糕的WebAssembly程序leak memory?这最终会导致WebAssembly程序崩溃吗?WebAssembly程序能否泄漏内存?
WebAssembly程序可以用完所有分配的内存,一旦达到内存声明的最大值,4GiB或浏览器的限制,它就会耗尽。在内存中,使用工具链(如emscripten)的C++程序具有分配器,并且该分配器将决定内存不足时的操作。可能会崩溃!
在那个内存之外,程序也可以通过抓住一堆JavaScript对象并阻止GC收集它们来“泄漏”。这最终会打到内存限制,导致崩溃。