社区
Linux/Unix社区
帖子详情
求一个linux下线程保护的批处理代码
y63964632
2011-09-06 09:44:54
自己写了个jar程序,希望定时检查是否正常运行.
现在用kill 1000就可以杀掉...
怎么能做到和tomcat一样 简单的kill不掉呢?谢谢~
分不够再开贴~
...全文
126
7
打赏
收藏
求一个linux下线程保护的批处理代码
自己写了个jar程序,希望定时检查是否正常运行. 现在用kill 1000就可以杀掉... 怎么能做到和tomcat一样 简单的kill不掉呢?谢谢~ 分不够再开贴~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
modicum_lf
2011-09-07
打赏
举报
回复
[Quote=引用 1 楼 zmlovelx 的回复:]
做成一个守护进程.
[/Quote]
++
念茜
2011-09-07
打赏
举报
回复
父进程守护子进程
fork后父进程
while(1){
wait();等待子进程
如果有以外发生继续等
如果子进程结束了就在fork一个
}
y63964632
2011-09-07
打赏
举报
回复
[Quote=引用 2 楼 wangtingguang 的回复:]
用父进程做守护进程,监控子进程的状态。
子进程死掉了,再clone一个。
或者做个脚本, 定时检测一下进程数,ps -ef |grep -cv ,进程数减少了,再去启动进程。
[/Quote]
#!/bin/bash
pnum_server=`ps -wef|grep test |grep -v grep |wc -l`
if test $pnum_server -lt 1
then
kill test
sleep 2s
java -jar test.jar
fi
这么些脚本检测test.jar可以么?
如果可以,需要把这个脚本放哪里呢? 谢谢~
y63964632
2011-09-07
打赏
举报
回复
[Quote=引用 1 楼 zmlovelx 的回复:]
做成一个守护进程.
[/Quote]
能否给写简单的代码?
不怎么懂这个系统..谢谢~
braveyly
2011-09-07
打赏
举报
回复
上面的讨论涉及两个不同的需求:
(1)让进程无法kill -9 ( LZ的需求 )
(2)让进程永不退出,即使退出了,也可以自动重启
第一个需求,解决的关键点,即让进程由init托管,即让其父进程为init进程,实现方法有很多种,例如将进程设置成为精灵进程(守护进程),或者是fork两次等等
第二个需求,需要借助于另外一个进程(包括crontab shell脚本进程)来实时监控进程的状态,当进程退出后,能够重新启动。方法也有很多种,一般是查看进程信息,或者是采用IPC来进行keepalive,一旦dead,则重启。更多进程间监控思路可以参考:http://www.chinaunix.net/jh/23/136383.html
wangtingguang
2011-09-06
打赏
举报
回复
用父进程做守护进程,监控子进程的状态。
子进程死掉了,再clone一个。
或者做个脚本, 定时检测一下进程数,ps -ef |grep -cv ,进程数减少了,再去启动进程。
帅得不敢出门
2011-09-06
打赏
举报
回复
做成一个守护进程.
zookeeper-3.5.2-alpha windows免安装版
ZooKeeper是
一个
分布式的,开放源码的分布式应用程序协调服务,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终将简单易用的接口和性能高效、功能稳定的系统提供给用户。...
嵌入式
linux
线程
栈大小 4k,
Linux
系统调优
Linux
在进行系统调优的时候,首先要考虑整个操作系统的结构,然后针对各个部分进行优化,下面展示
一个
Linux
系统的各个组成部分:有上图可以看出,我们可以调整的有应用程序,库文件,内核,驱动,还有硬件本身,所以...
Linux
线程
优先级详解
-20到19数值越小优先级越高
批处理
任务SCHED_IDLE极低优先级系统空闲时运行后台维护任务关键结论:普通调度:nice值越小(可以是负数),优先级越高实时调度:优先级数值越大(1-99),优先级越高。
【
Linux
应用开发 】
Linux
下应用层
线程
优先级管理解析
对于实时调度策略,
线程
的优先级由
一个
单独的实时优先级参数控制,其范围通常是 1 到 99,这里 99 表示最高优先级。 C++ 示例:调整
线程
nice 值 #include #include #include #include void SetThreadNiceValue(pid...
批处理
脚本实战:实现任意文本写入文件的自动化任务
set命令是
批处理
中最核心的变量操作指令,用于定义、修改或删除环境变量。其基本语法如下:注意:等号两侧不能有空格,否则会被视为变量名的一部分。例如:set name = John ← 错误:变量名为"name "(带空格)set ...
Linux/Unix社区
23,224
社区成员
74,537
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章