我正在(相信)Python 2.7在Ubuntu 14上运行一个简单的Flask应用程序(在virtualenv中使用3.x遇到困难)。每次我尝试使用CTRL + C关闭应用程序时,它都会立即再次启动该应用程序。如果我再次关闭它,它会退出,但是会运行一个ps -a
可以看到的进程。
如果我随后再次运行.py文件,它将启动,然后如果我使用CTRL + C退出,它将抛出socket.error: [Errno 98] Address already in use
并退出。
这时ps -a
有两个可见的进程。任何随后的启动都会立即抛出socket.error。
我注意到只有在行app.run(host='0.0.0.0')
被保留时才会出现此错误(更改IP无效)。
我不确定原因,并寻求对此事的任何帮助。
答案 0 :(得分:1)
使用
app.run(host=‘0.0.0.0’, debug=True)
代替
app.run(debug=True)
app.run(host=‘0.0.0.0’)
后者应连续启动两个应用。 因此,当您第一次按ctrl + C时,实际上是在终止第一行,但是紧接着第二行执行并启动另一个应用程序。