当前位置: 技术问答>linux和unix
关于shell的问题
来源: 互联网 发布时间:2017-02-07
本文导语: 联系trap命令的时候写了这么一段代码 trap 'echo 你好trap' INT while : do echo "Hello trap" sleep 2 done 当按下CTRL+C的时候程序的输出结果反应sleep 命令直接的就跳过了 直接的输出 你好trap 和Hello trap 小弟在这就是有点...
联系trap命令的时候写了这么一段代码
trap 'echo 你好trap' INT
while :
do
echo "Hello trap"
sleep 2
done
当按下CTRL+C的时候程序的输出结果反应sleep 命令直接的就跳过了 直接的输出 你好trap 和Hello trap
小弟在这就是有点疑问 是不是INT信号会使sleep直接无效呢 请高手指教.....
trap 'echo 你好trap' INT
while :
do
echo "Hello trap"
sleep 2
done
当按下CTRL+C的时候程序的输出结果反应sleep 命令直接的就跳过了 直接的输出 你好trap 和Hello trap
小弟在这就是有点疑问 是不是INT信号会使sleep直接无效呢 请高手指教.....
|
1. 程序执行速度比你按键的速度快的多
2. 中断了以后去执行中断处理程序,中断程序执行完后,不会回来再把“没睡完”的时间给补上,因为被中断的系统调用sleep在中断返回后不会重启动。
2. 中断了以后去执行中断处理程序,中断程序执行完后,不会回来再把“没睡完”的时间给补上,因为被中断的系统调用sleep在中断返回后不会重启动。
|
sleep 被中断了!