[英]Ruby Process.daemon: turning on/off
我試圖守護運行在2.1.1上的Ruby腳本。
我的守護程序部分代碼如下所示:
case ARGV[0]
when "-start"
puts "TweetSearcher started."
Process.daemon
when "-stop"
Process.kill(9,Process.pid)
else
puts "Lacks arguments. Use -start/-stop"
abort
end
但是,看起來Process.kill(9,Process.pid)
並沒有殺死我想要的東西。 我想殺死一個先前在后台運行的“ ruby tweetsearcher.rb -start
”。
我該如何進行?
通常,PID存儲在文件中,然后讀取該文件將其停止。
調用Process.kill(9,Process.pid)
殺死“停止程序”進程本身,而不是試圖停止的進程。
這是使用Ruby編寫守護程序的指南: http : //codeincomplete.com/posts/2014/9/15/ruby_daemons/
如您所見,這不是一個微不足道的過程。
這是另一個博客,建議您根本不要嘗試守護進程,而應該依靠流程監視系統來解決這些問題: https : //www.mikeperham.com/2014/09/22/dont-daemonize -您的守護程序/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.