【问题标题】:How can i check the current usage of ram with Node.js? (Discord.js Bot)如何使用 Node.js 检查 ram 的当前使用情况? (Discord.js 机器人)
【发布时间】:2018-12-02 19:01:51
【问题描述】:

我想创建一个名为 _ram 的命令,它应该显示机器人 ram 的当前使用情况。我已经尝试过这些事情:

${client.performance.memory} //(Says memory is not defined)
${window.performance.memory} //(Window is not defined)

有没有一种工作方式如何显示它?

【问题讨论】:

  • 您可能还想用 [electron] 标记您的问题,因为它有自己的 API 来查询实际的总内存使用量,而且方式比仅使用 Node.js 的方式更多。

标签: javascript node.js discord.js


【解决方案1】:

如果你想知道你的Node.js进程使用了​​多少内存,可以查询:

process.memoryUsage().heapUsed / 1024 / 1024;

它将以字节为单位输出您的进程使用的内存。它不会显示 Node.js 使用的实际内存,因为在这种情况下,您还需要考虑 Node.js 垃圾收集器。

【讨论】:

    【解决方案2】:

    您必须使用:process.memoryUsage(),它返回一个对象,以字节为单位描述进程的内存使用情况。

    {
      rss: 4935680,
      heapTotal: 1826816,
      heapUsed: 650472,
      external: 49879
    }
    

    heapTotalheapUsed 指的是 V8 的内存使用情况。 external 指 绑定到由管理的 JavaScript 对象的 C++ 对象的内存使用情况 V8。 rss,驻留集大小,是在 主内存设备(即总分配内存的子集) 进程,包括堆、代码段和栈。

    【讨论】:

      【解决方案3】:
      var os = require('os');
      
      var usedMemory = os.totalmem() -os.freemem(), totalMemory = os.totalmem();
      
      var  getpercentage = 
        ((usedMemory/totalMemory) * 100).toFixed(2) + '%'
      
      console.log("Memory used in GB", (usedMemory/ Math.pow(1024, 3)).toFixed(2))
      console.log("Used memory" , getpercentage);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-10-03
        • 2010-09-21
        • 2020-07-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多