delete
v javascriptu se NEpoužívá k mazání proměnných ani k uvolnění paměti. Používá se POUZE k odstranění vlastnosti z objektu. Můžete najít tento článek
na delete
operátor dobré čtení.
Odkaz na data uložená v proměnné můžete odstranit nastavením proměnné na něco jako null
. Pokud na tato data nejsou žádné další odkazy, bude to způsobilé pro sběr odpadu. Pokud existují další odkazy na tento objekt, nebude vymazán z paměti, dokud na něj nebudou žádné další odkazy (např. váš kód se k němu nebude moci dostat).
Pokud jde o to, co způsobuje akumulaci paměti, existuje řada možností a ve skutečnosti nevidíme dost vašeho kódu, abychom věděli, jaké odkazy by se mohly držet, aby GC neuvolnil věci.
Pokud se jedná o jediný, dlouho běžící proces bez přerušení v provádění, možná budete muset ručně spustit garbage collector, abyste se ujistili, že dostane příležitost vyčistit věci, které jste vydali.
Zde je několik článků o sledování využití paměti v node.js:http://dtrace.org/blogs/bmc/2012/05/05/debugging-node-js-memory-leaks/ a https://hacks.mozilla.org/2012/11/tracking-down-memory-leaks-in-node-js-a-node-js-holiday-season/ .