On Thu, Jun 6, 2013 at 12:57 AM, Hubert Eichner <[email protected]> wrote: > Hi all, > I'm trying to "unload" a previously require()d module (specifically, > express) to save memory. So I tried deleting all references to the Module > objects - in require.cache, global.module.children, and the variable that is > assigned the module's exports (var express = require('express')). However, > the object does not seem to be collected by the garbage collector, the > memory consumption stays at a high level. Are there other references to > loaded modules saved somewhere, or could anyone provide hints on unloading > modules? > > Ideally, I would like to actually run the module in an extra context - e.g., > var myScript = vm.createScript('var express = require("express")'); > var sandbox = { require:global.require }; > myScript.runInNewContext(sandbox); > sandbox=null; > myScript=null; > but even in this case, the memory is not freed. > > Any help is greatly appreciated. > Thanks a lot, > Hubert
Try `delete require.cache['express']`. -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
