观察以下python程序:
#loop.py
while True:
pass
易知这个程序就是一个无限循环的程序。
再观察以下Makefile文件:
run:
pkill python
python loop.py &
它的作用就是杀死这个python程序并将它重新启动。假设现在loop.py已在正常运行,则我们运行以下Makefile命令其结果如下:
make run
可以它运行得很好。但是如果此时loop.py没有在运行,或者我们在运行make run之前先运行pkill python,结果将会怎样呢?
可见,由于loop.py没有在运行,所以Makefile命令在pkill python处就因为失败而退出了。修正这一问题的方法其实很简单(参考