ruby - 从内部获取 Linux 中 Ruby 进程的内存使用情况的好方法?

标签 ruby linux memory

我想要一种从内部获取 Linux 中 Ruby 进程内存使用情况的好方法。 为此,我定义了一个 Ruby 函数 vmrss(),它返回当前进程的驻留集大小:

#!/usr/bin/env ruby
def vmrss
    File.readlines('/proc/self/status').select {|l| l =~ /VmRSS/}.first.split[1..-1].join(" ")
end

puts "My current memory consumption: #{vmrss}"

有没有更好的方法?

最佳答案

您可以使用 proc-wait3 library ,它添加了 Process.getrusage。这会节省您自己实现低级内容的时间,但如果您只想使用内存,那么包括一个库可能就有点过分了,尤其是考虑到它已经有一段时间没有更新了。

关于ruby - 从内部获取 Linux 中 Ruby 进程的内存使用情况的好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11451314/

相关文章:

c++ - Arduino EEPROM 获取损坏的值

ruby-on-rails - 向 Symbol 添加 to_str 方法有什么负面影响?

ruby - 为什么 Range 在下降时不起作用?

python - 如何在 linux 中包含 python 模块?

c - 在 Mac OS X 上安装第三方 C 库

c - 越界访问数组有多危险?

ruby-on-rails - 在 rails 中调整 f.text_area 的大小

ruby-on-rails - 在 Rails 项目中不断自动加载的问题(偶尔工作)

linux - 在 Linux 中使用 head 和 tail 返回文件的第 n 项

memory - Tomcat内存问题