Ruby IRB - 不能做Process.getrlimit

时间:2012-08-01 04:57:18

标签: ruby process irb

我正在阅读一本书“使用Unix进程”,它使用ruby来解释unix / linux进程。这是我第一次使用ruby。我尝试了一个示例来获取进程的资源限制。

irb(main):001:0> Process.getrlimit(:CORE)
Errno::EINVAL: Invalid argument - getrlimit
    from (irb):1:in `getrlimit'
    from (irb):1
    from :0


irb(main):004:0> Process.getrlimit()
ArgumentError: wrong number of arguments (0 for 1)
    from (irb):4:in `getrlimit'
    from (irb):4
    from :0

但我似乎无法识别“getrlimit”(尽管如果我不提供任何args,它说我的参数数量错误)。在Google或SO上没有找到任何相关内容。试过:NOFILE,:CORE等。是否有我需要包含/要求使getrlimit工作。环境:

Ubuntu 11.04 32 bit. Kernel 3.0.0-14
ruby 1.9.2p290 (2011-07-09 revision 32553) [i686-linux]
irb 0.9.5(05/04/13)

问候

1 个答案:

答案 0 :(得分:0)

抱歉..没关系。似乎IRB正在运行以前版本的ruby(1.8.7),它不知何故不支持getrlimit(虽然根据google上的所有帐户,它应该有效)。我已将ruby升级到1.9.1,但未将/ usr / bin / irb中的链接更新为/usr/bin/irb1.9.1。所以IRB仍在运行ruby 1.8.7。在将irb的软链接更新到v1.9.1之后,getrlimit正在运行。