背景
今天开发的时候遇到了一个问题,在项目的__init__.py文件初始化一个多进程的定时任务,然后发现它竟然启动了两个进程(进程ID不一样),起初以为是不能在初始化文件启动多进程,把它移动到manage.py文件还是出现了一样的情况。后来经过研究发现,在debug模式(开发模式)下Django会开启两个线程,另一个用来监听代码变化(比如说Ctrl+S会自动重启)
解决
如果不想让它启动执行两次,可以在启动命令加上“–noreload”
python manage.py runserver 8000 --noreload