如何在nodejs中完成每个调度作业后清除内存?

MIt*_*tel 5 javascript cron node.js

我正在使用 node-crone 来安排我的工作。但我想在每次工作完成后清除记忆。那么我该怎么做呢?

Avi*_*sho 1

如果您在 cron、函数或块作用域(例如let)内正确声明变量,那么这些变量只有在该作用域处于活动状态时才会存在(即内存被清除)。

例如:

var cron = require('node-cron');

cron.schedule('* * * * *', function(){
  // y variable will be local to your function
  let y = 2;
});
Run Code Online (Sandbox Code Playgroud)

然后,每次函数完成运行时,Javascript 垃圾收集都会清理这些变量,因为它们不再使用。

但是,如果您声明它们,否则它们可以保留为全局变量,并且即使在函数完成后也可以保持活动状态。

例如:

var cron = require('node-cron');

cron.schedule('* * * * *', function(){
  // y becomes a global variable
  y = 2;
});
Run Code Online (Sandbox Code Playgroud)