当前位置:  开发笔记 > 编程语言 > 正文

在顶部更改ruby进程名称

如何解决《在顶部更改ruby进程名称》经验,为你挑选了3个好方法。

我想更改linux/unix top命令中显示的ruby进程的名称.我试过了

$0='miname'

方法,但它只适用于ps命令,并在顶部,该过程不断显示为"红宝石"



1> Gordon Wilso..:

Dave Thomas 在rails中做了一篇有趣的帖子.关于实际进程名称更改代码没有特定的rails.他使用这种$0='name'方法.当我跟着他的脚步名称改为中pstop.

在帖子中,c如果您的top版本默认情况下没有显示该命令的短版本,他建议使用键盘命令.


web.archive.org拯救生命:https://web.archive.org/web/20130415202502/http://pragdave.blogs.pragprog.com/pragdave/2008/11/trivial-request-logging-for-rails. HTML

2> dubek..:

Ruby 2.1 为此目的引入了一种Process.setproctitle方法:

Process.setproctitle("My new title")



3> Keltia..:

我认为Ruby没有内置设施(setproctitle(3)).您可能应该尝试查看ruby-ffi并创建接口setproctitle(3).

编辑:我知道你有答案,但我想向你展示一些使用ffi的代码:

require "ffi"
#
module LibC
  extend FFI::Library

  attach_function :setproctitle, [:string, :varargs], :void
end

LibC.setproctitle("Ruby: executing %s", :string, $0)

因为setproctitle(3)不存在而无法在OS X上运行,适用于FreeBSD.

推荐阅读
mylvfamily
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有