一. 死锁的定义
所谓的死锁是指在多道程序系统中,一组进程中的每个进程都无限期地等待被该组进程中的另一个进程所占有且永远不会被释放的资源,这种现象称系统处于死锁状态,简称死锁。处于死锁状态的进程成为死锁进程。
系统发生死锁会大量浪费系统资源甚至会导致整个系统崩溃。
二. 产生死锁的原因
产生死锁的原因主要有两个:
一是竞争资源,系统提供的资源有限,不能满足每个进程的需求;
二是多道程序运行时,进程的推进顺序不合理。
三,案例:crontab 中的定时任务并没有按时执行
排除:1,任务书写错误
排查步骤:
1,如果任务是需要连通外网,检查网络是否连通
ping www.baidu.com
2,复制并手动执行下任务 ,发现任务 is running ---判断任务进程可能死锁
3,ps -aux | grep 任务名(命令的目录或者文件名都可以)
ps -aux |grep
发现存在进程任务
4,进入/tmp/ 中,查看是否有 .lck 文件
find /tmp -name "*.lck"
如果有:将文件进行删除,或者重命名.bak
5,重新验证 :手动输入任务命令,查看是否正常执行。