原文:https://www.cnblogs.com/wenjunxiao/p/4093377.html
Python自动重新加载模块(autoreload module)
守护进程模式
使用python开发后台服务程序的时候,每次修改代码之后都需要重启服务才能生效比较麻烦。看了一下Python开源的Web框架(Django、Flask等)都有自己的自动加载模块功能(autoreload.py),都是通过subprocess模式创建子进程,主进程作为守护进程,子进程中一个线程负责检测文件是否发生变化,如果发生变化则退出,主进程检查子进程的退出码(exist code)如果与约定的退出码一致,则重新启动一个子进程继续工作。
自动重新加载模块代码如下:
#!/usr/bin/env python # -*- coding: utf-8 -*- """This module is used to test how