日期:2014-05-16  浏览次数:20744 次

请问有没有办法让程序在崩溃的时候自启动
服务器端的一个程序

------解决方案--------------------
兄弟是不是需要写个守护进程
守护进程应该可以完成
------解决方案--------------------
写一个监控进程,用这个进程来启动你所有的程序(fork+exec),并在监控进程中记下所有程序的Pid和名字,再在监控进程中捕捉SIGCHLD信号,当发生SIGCHLD信号时,根据waitpid返回的进程号找到与之对应的程序名字并启动之.这样,不管你的程序是core dump了还是被人工kill了,都能自动的重新启起来。只是当你的程序陷入死循环这个方法就不灵了(不过似乎也没有完没的办法来解决这个问题)