社区
C++ 语言
帖子详情
linux会在哪些情况下向进程发送SIGKILL信号
shangugulang
2011-06-18 11:06:33
遇一令人抓狂的问题,程序运行会被信号SIGKILL终止。
环境:linux C++写的一个服务器程序,本机安装了ORACLE数据库,程序有访问数据库。
跑着跑着程序就被SIGKILL信号终止了,头大,不知道是什么情况,求助大牛!!!
...全文
814
12
打赏
收藏
linux会在哪些情况下向进程发送SIGKILL信号
遇一令人抓狂的问题,程序运行会被信号SIGKILL终止。 环境:linux C++写的一个服务器程序,本机安装了ORACLE数据库,程序有访问数据库。 跑着跑着程序就被SIGKILL信号终止了,头大,不知道是什么情况,求助大牛!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
w0z1y
2012-01-16
打赏
举报
回复
楼主你好,我也遇到了这样的问题,情况和你描述的一样。看过内存,也没有用太多。还没有找到解决办法,如果楼主看到信息,请指教一下该怎么解决这个问题。
shangugulang
2011-06-21
打赏
举报
回复
[Quote=引用 8 楼 zhao4zhong1 的回复:]
在你的程序循环中加写日志并每次立即将日志写到磁盘文件中,通过不断细化和检查最后写入的日志内容判断你进程退出的真正原因。
[/Quote]
我也想着这个法子,可是进公司不久,代码多又杂,而且定位定来定去,没什么规律!困惑中。
请教一下,linux下物理内存不足的情况,好像是会杀进程,用的是SIGKILL信号吗?
shangugulang
2011-06-21
打赏
举报
回复
[Quote=引用 9 楼 q191201771 的回复:]
写一个捕获SIGKILL信号的函数
[/Quote]
据我所知 SIGKILL是无法捕获的。
你能给我提供一个???
就想叫yoko
2011-06-21
打赏
举报
回复
写一个捕获SIGKILL信号的函数
赵4老师
2011-06-21
打赏
举报
回复
在你的程序循环中加写日志并每次立即将日志写到磁盘文件中,通过不断细化和检查最后写入的日志内容判断你进程退出的真正原因。
shangugulang
2011-06-21
打赏
举报
回复
集思广益,众人拾柴啦....
justkk
2011-06-18
打赏
举报
回复
有没有其他上下文信息呢?
是必然的还是随机的?
通常程序日志有没有什么发现..
shangugulang
2011-06-18
打赏
举报
回复
顶顶顶啊....各路神通大牛,拉我一把吧,小弟还在加着班啦!!!
shangugulang
2011-06-18
打赏
举报
回复
[Quote=引用 1 楼 justkk 的回复:]
怎么确定是被信号SIGKILL 终止的?
[/Quote]
哥,你怎么就这么怀疑我呢?
首先,字面上,显示“已杀死” 这个是和kill -9 现象一致
其次,gdb下提示 "Program terminated with signal SIGKILL".
且(gdb) bt
No stack.
justkk
2011-06-18
打赏
举报
回复
怎么确定是被信号SIGKILL 终止的?
justkk
2011-06-18
打赏
举报
回复
唉 访问无效的内存地址了?
shangugulang
2011-06-18
打赏
举报
回复
[Quote=引用 4 楼 justkk 的回复:]
有没有其他上下文信息呢?
是必然的还是随机的?
通常程序日志有没有什么发现..
[/Quote]
哎,我倒是希望他能给我留下点什么遗产,可惜他信佛,来也空空,去也匆匆啊...
Linux
查找是
发送
SIG
KILL
信号
的
进程
背景 最近在开发服务器上遇到了一件奇怪的事情,同事反馈之前运行着正常的程序,现在现在运行一段时间
会
退出,而且没有日志输出。询问后,出现这个现象是在周末由于停电重启之后。 停电重启?退出,无日志?有关系吗? 问题定位 由于程序在常驻,所以使用了两个
进程
相互守护。是守护出了问题吗?如果是的话,应该
会
有日志输出。在服务器上查看程序的过程中又发现新的疑点,使用vim打开带有push的文件名的文件,
系统什么时候
发送
SIG
KILL
信号
when does the system send
SIG
KLILL 我的程序有时候
会
随机收到
SIG
KILL
信号
,gdb
会
提示: Program terminated with
sig
nal
SIG
KILL
,
Kill
ed. The program no longer exists. (gdb) 并且我找不到任何原因?什么时候系统
会
发送
SIG
KILL
信号
呢?我这里没有其他程序
发送
这个
Linux
中的
SIG
TERM
信号
及其与
SIG
KILL
信号
的区别和
信号
处理
与
SIG
TERM不同,
SIG
KILL
信号
(
信号
编号为9)是一种无条件终止
信号
,用于强制终止
进程
。
SIG
KILL
信号
对于那些无法通过正常方式终止的
进程
非常有用,但它也可能导致
进程
在终止之前无法进行清理工作,从而可能导致数据丢失或资源泄漏。相比之下,
SIG
KILL
信号
是一种无法忽略的终止
信号
,它可以用于迫使
进程
立即终止,但可能无法进行清理操作。在
信号
处理方面,
SIG
TERM和
SIG
KILL
是两个常见的
信号
,它们在
进程
管理和终止方面起着重要的作用。希望以上信息对你有所帮助!如有任何进一步的问题,请随时提问。
linux
向
进程
发
信号
,
Linux
命令 -
kill
: 向
进程
发送
信号
kill
命令通常用来 “杀死”(终止)
进程
,它可以用来终止运行不正常的程序或者反过来拒绝终止的程序。
kill
命令准确地说并不是 “杀死”
进程
,而是给
进程
发送
信号
(
sig
nal)。和文件一样,
进程
也有所有者,只有
进程
的所有者(或超级用户)才能使用
kill
命令来向它
发送
信号
。命令格式
kill
[-s
sig
nal|-p] [--] pid...
kill
-l [
sig
nal]命令参数-s s...
Linux
进程
通信的试验
1、实验目的 1.1了解
Linux
进程
通信的概念。 1.2 掌握
Linux
进程
通信的常用方法。 2、实验内容 创建admin用户,密码也是admin。 用admin登陆后,创建src目录,所有的源代码、中间代码和目标代码都放在/home/admin/src目录下。 (1)编写一个程序创建子
进程
,子
进程
循环打印一行提示文字,父
进程
等待10秒钟后向子
进程
发送
SIG
KILL
信号
,杀死子
进程
。 #include<stdio.h> #include<sys/types.h> #include&
C++ 语言
64,639
社区成员
250,578
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章