python atexit 模块提供的一些功能
python 的atexit 提供了一些钩子,可以在python 正常退出的时候可以执行一些方法
参考使用
- 注册钩子函数
import atexit
atexit.register(lambda: print('exit'))
def main():
print('main')
if __name__ == '__main__':
main()
说明
注意此模块在未被捕获的信号杀死以及python 内部致命错误以及调用os.exit() 不会执行, python 的tables 模块就使用了此方法对于文件为正常关闭进行警告,参考处理 (_open_files.close_all 是一个方法,内部文件打开的部分使用了一个变量进行记录)
atexit.register(_open_files.close_all)
浙公网安备 33010602011771号